Parrot VM v1.0.0 released
parrot.org
parrot.org
Since the separation of Parrot from the development of Perl 6, I do think it's fair to say that progress has been good.
Parrot is a register-based virtual machine being developed using the C programming language and intended to run dynamic languages efficiently. It uses just-in-time compilation for speed to reduce the interpretation overhead. It is currently possible to compile Parrot assembly language and PIR (an intermediate language) to Parrot bytecode and execute it.
Parrot was started by the Perl community, and is developed with help from the open source and free software communities.
Pugs was really just a prototype. Read the source code some time, and you'll see why.
Given Parrot's very dynamic nature, a dynamic language seems like a good idea. Io would be quite interesting but it's too esoteric at this point so perhaps a more popular prototype-based language like JavaScript? What about dumping the old, crappy C-based implementation of Ruby for Parrot?
There is also a Python implementation called "Pynie" http://code.google.com/p/pynie/
List of language developments are kept on the wiki at https://trac.parrot.org/parrot/wiki/Languages.
If language developers get behind Parrot it could become a very interesting alternative to JVM & .Net
The grammar is fairly complete, but the standard library isn't there, several builtin classes are missing completely, or don't have all their methods filled out, etc.
I was targeting 1.9, yes.
The big problem is that I don't actually know or really like ruby. That's the main reason I stopped working on it.
I'd love to see someone else take up work on it. I'd be glad to give commit privs on the repo to anyone, and I'd love to help anyone get up to speed in working on it.
Parrot 1.0 was released on 17th March.. as scheduled.
What it means is Parrot now has a stable API for language developers.... http://perlbuzz.com/2008/11/parrot-10-will-be-out-in-march-2...
Its looks like Rakudo 1.0 (Perl6 on Parrot) is earmarked for next year... 10 years earlier than you feared ;-)
Years ago, I slacked on updating my 2nd edition Camel Book to 3rd edition, figuring that I would just wait for the Perl 6 version. Ten years ago. The book is not in very good shape these days.
So perhaps you should upgrade your Camel book or look at "Perl Best Practices" by Damian Conway. Also keep an eye on http://www.modernperlbooks.com
As for Perl6/Rakudo... no need to wait its already here! Clearly its still "beta" but that shouldn't stop you downloading and playing with it.
However, these days I favor Ruby over Perl. Especially now that the interpreter is not dog-slow anymore.
Of course, every ruby dev I've spoken to about this has basically said "you don't need anything more, and if you do want it, that means your design is wrong" - which brings us immediately into a question of opinion so I can't really argue either way about it.
I do find perl5 v10 w/MooseX::Declare to be very much "ruby, but with a more flexible object system" though ...
BTW... "half way complete" != "passes half of the tests". I would have thought the hard stuff was done first ;-)
+ No it's not, it's just resting.
- Resting? I know a " operation timed out" when I see one.
+ It's pining for the fjords.
... etc.
Or should I say, this joke was funny about 5 years ago. After being used 150 times since then, it's really lost its charm.