Friday July 07, 2006
Perl 6 and parrot outsider observations @YAPC::NA
(This is adapted from something I posted on my Shopzilla
wiki about YAPC::NA.)
At YAPC::NA this year, I heard lots of things about Perl 6 and Parrot, and spoke with many people directly involved with the subject. There seems to be very little consensus about the real state of affairs. These are paraphrased comments from people (individual and composite) who are actually involved in these projects (not just blowhards like myself.)
- Parrot VM is broken, and probably won't be fixed any time soon.
- Parrot may hold back perl 6
- perl 6 might just take off without Parrot, somehow
- Perl 6 is coming along nicely
- Radically better than perl 5
- integrates all the goodness from perl 5, Ruby, etc.
- Perl 6 now!
- Of course, Pugs is running a version of Perl 6 now
- Perl 6 is running in Perl 5 now! (or, the Audrey/Ingy öne-twö punch)
- Audrey Tang and others have perl 6 semantics running on perl 5 using source filtering
- Ingy döt Net (along with Audrey) has given us Module::Compile which will cause perl to do the source-filtering business only once, and "compile" it into post-filtered perl5, which will be saved (cached) and re-run each time (until you want to edit the real source.) Using this in combination with perl 6 source filtering mojo, you can write perl 6 into perl 5 with minimal deployment/execution penalty.
- Other pieces of perl6 have been implemented directly into perl5 (search for perl6 on CPAN to see some of the goodies.)
- Perl 6 is vaporware
- All of this work has taken too long and hasn't produced anything remotely resembling production code.
- (my blowhard comment) Perl 6 syntax and semantics reinforce complaints perl critics levy against perl (namely, TIMTOWTDI and expressiveness make for less readable language.) See Periodic Table of Operators for reference.
- Perl 6 won't really be a good convincing case until it's
"too late" (which can mean any of a number of possible perl_doomsday scenarios.)