|Keep It Simple, Stupid|
Re: Will Perl 6 Replace Perl 5?by masak (Scribe)
|on Jan 03, 2010 at 17:20 UTC||Need Help??|
Perl 5 will be around for a long, long time. It will have patches and releases and modules and community, just as before.
Perl 6, on the other hand, is in an early stage of its lifetime. Implementations, with Rakudo currently in the lead, are still suffering from various issues that rule out using it in production for most people. The speed of development is impressive, but there's a long way to go from zero to something.
That said, there are already many interesting points of use for "early adopters"; people who want to get a taste of what it's like to code in Perl 6. If you decide that you are an early adopter, and take Rakudo for a spin, you'll discover that some of the features are quite solid, and really nice to use. At least that's the way it worked out for me, since early 2008.
In some sense, the question "Will Perl 6 replace Perl 5?" isn't relevant yet, because the sisters in question are 22 years old (Perl 5) and, depending how you see it, 9 years old (Perl 6 announcement), 6 years old (last apocalypse finished), 2 years old (Rakudo development picks up speed) or not even born yet (release of a widely usable implementation). No matter which metric you use, it's something of an apples-and-oranges comparison between the established, stable, fast Perl 5 and the still-infant Perl 6.
Even so, it's an understandable question. Underlying it is some natural worry about the fate of both Perl 5 and Perl 6. Inherent in some of the rhetoric used for Perl 6 is that it's the "next version" of Perl (i.e. more advanced than Perl 5), that it's meant to replace Perl 5 long-term, and that it "fixes" Perl 5 by being a "second system syndrome done right". Even the name, Perl 6, indicates that it's somehow the "next step" after Perl 5.
Well, it is. There's no way around it. That's why some of us are dedicating a lot of our available tuits to building on Rakudo and other Perl 6-related things: because Perl 6 promises to be more extensible, more adaptable to change in the coming 100 years, and more whipuptitudinal and manipulexant than Perl 5. (Nobody is claiming that current implementations are any of those things yet to any significant extent, though. See "still-infant" above.)
As any large-scale ground-breaking project, the Perl 6 effort as a whole might fail to deliver. That is always a risk; that one day comes when no-one is working towards making Perl 6 happen, piece by piece. Having seen the rocketing development in the past two years, I find such a scenario unlikely, but realistically, you never know.
Use Perl 5. A lot. It's a great tool in your belt. And do try out Perl 6; maybe its completion already intersects with your early-adopterness.