use Perl Log In
Parrot 0.0.4 is released
[UPDATE: Looks like the tar ball hasn't hit CPAN yet. And I can't spell. Or cut and paste. If you can't wait, try the CVS repository --jjohn]
[UPDATE: Also try http://cpan.valueclick.com/src/6.0/parrot/SIMON/parrot-0.0.4.tar.gz.]
So these Kings and Queens entered the thicket, and before they had gone a score of paces they all remembered that the thing they had seen was called a lamppost, and before they had gone twenty more they noticed that they were making their way not through branches but through coats. And next moment they all came tumbling out of a wardrobe door into the empty room, and they were no longer Kings and Queens in their hunting array but just Peter, Susan, Edmund and Lucy in their old clothes...
... "Eh? What's that? Yes, of course you'll get back to Narnia again some day. Once a King in Narnia, always a King in Narnia. But don't go trying to use the same route twice. Indeed, don't try to get there at all. It'll happen when you're not looking for it."
- "The Lion, The Witch and the Wardrobe",
It's funny how you expect to get one thing, but end up with something completely different. I expected to bring you access to keyed PMCs and Unicode encoding support in this release; instead, Parrot 0.0.4 has a whole host of features none of us expected back in December.
We now have a working JIT compiler, thanks primarily to Daniel Grunblatt. Gregor Purdy produced something he calls "predereferencing", which rearranges Parrot bytecode in memory to give a 22% speedup over the normal Parrot run. Dan Sugalski himself has provided a fast arena-based memory allocation system, and a copying garbage collector to match. We're starting to look like a real interpreter, and to prove it, Clinton Pierce has written an XML parser in Parrot bytecode.
Alex Gough, not to be outdone, has added a bignum library to the core. Oh, and the code is much cleaner, thanks in part to Jason Gloudon's relentless reindenting, and we now compile on many compilers with minimal warnings. Finally, Brent Dax has added rudimentary regular expression support to Parrot.
You can get the source tarball in (currently) two different ways:
(once the mirrors have updated)
From CVS: See the Parrot CVS home page at http://cvs.perl.org/
Once you've unpacked parrot, you should be able to run "Configure.pl" and "make", and then run some tests:
Take a look at docs/parrot.pod for where to go from there.
Patches should be sent to the perl6-internals mailing list, where I'll take a look at them and apply them to the CVS tree. As time goes by, people who regularly submit good patches will be given committer access to the tree, and can help me out applying other patches from the list.
And that is the very end of the adventure of the wardrobe; or at least, it is for me, and at least for now. I've enjoyed the privilege of working with and leading a great bunch of developers, but my life is filling up to the brim and I'm afraid I don't have much time to commit to Parrot any more; I'd very much like to make 0.0.4 my last release.
I hope to contribute to Parrot in the future if things get less busy, but for now, I feel I've achieved my goals of putting Parrot on a solid footing, and it's time for me to rest.
The pumpkin hereby passes to Jeff Goff. Go bug him now.
Have fun, good luck, and God bless,