Perl 6 is now available in a preview release, Rakudo Star. Why has it taken ten years to get there and is Perl 6 even relevant any more?
Given Perl is something of a religion, a mystic religion at that, the release of the long awaited Perl 6 is a big event. Don't get excited though - it hasn't happened yet! What has been released is a preview Rakudo Star which is described as "a useful and usable" distribution of Perl 6. The release is aimed at adventurous developers who want to be early adopters of Perl 6.
Perl 6 is odd because unlike upgrades to most programming language it doesn't even have backward compatibility on its list of target features - although there is a general spiritual intent to "keep Perl 6 Perl".
The design of the new language started in 2000 when Larry Wall (designer of the original Perl language) gave the State of the Onion speech at the Perl conference. The whole enterprise appears to be completely mad to the outsider - requests for comment were converted into a series of Apocalypses - the name means "revealing" - and then, because of inconsistencies, these were replaced by Synopses and a set of Exegeses - each a commentary on the language design.
At may Perl conferences since the running joke has been that Perl 6 would be out by Christmas - of course Christmas which year was never revealed. Recently (OSCON 2010) Larry Wall once again promised Christmas as the release date for Perl 6 but also hinted that a usable version might be available in July. He also introduced a new mascot for Perl - the hideous Camelia.
Rakudo Star incorporates many of the features of Perl 6 including introspection, object modeling, junctions, auto-threading etc.. but there are many missing features - binary objects, non-blocking I/O etc. Rakudo state that
we do not consider Rakudo Star to be a "Perl 6.0.0" or "1.0" release
The real question is will anyone care that Perl 6 or something resembling it has now been released? Perl 5 is still a vigorous and active language used for lots of big and small projects but there are now languages that have a clearer philosophy than Perl and just as enthusiastic supporters.
It isn't good that Larry Wall doesn't really seem to be clear about Perl 6. As reported by PC World he engaged in a humorous play act with his wife dressed as an angel and son dressed as a devil discussing the issues. For example:
"Are Perl 5 and Perl 6 really the same language?" he polled the audience, offering no definitive answer himself. Instead, he concluded, "I'm really really good at not deciding. When a question is raised on a mailing list, not deciding is often the most important decision I can make."
Is Perl 6 simply a language that has lost its way?
This might be the simplest reason for the ten year wait for the first generally available, if incomplete, release.
Beginning Perl 3rd Ed
Perl 5.12.0 released
Type Systems Demystified