|Perl Monk, Perl Meditation|
Perl 5 Optimizing Compiler, Part 3: I Have A Dreamby Will_the_Chill (Monk)
|on Aug 23, 2012 at 08:35 UTC||Need Help??|
I have a dream. I have a dream where any programming language, no matter how dynamic (or not), can execute near the speed of optimized C. This is a lovely dream. This dream may never happen.
BUT! I have another, more specific dream. I have a dream where Perl 5 (not a subset of Perl 5, not Perl 6, not Perl 7) can execute at nearly the speed of optimized C. With the help of Nick Clark, Ingy, Reini, Austin Perl Mongers, and others, I am chasing down this dream.
My task now is to run some initial benchmarks on these software systems (and maybe a few others) to get an idea of which direction we may go from here. Of course, I will post back here on Perl Monks once I've got some timing statistics to share.
Thanks for the continued interest, all the comments (both pro and con) are most welcome and appreciated, especially those from chromatic! ;-)
On August 18th, Nick Clark wrote:
Well, what I was really meaning was that there are actually (at least) three steps to running Perl 5 on a different platform
1) parsing Perl 5 source code
2) outputting code for it to the platform
3) a runtime library for Perl 5 for that platform
If Perlito's documentation is right, and it has most of a Python 2.6 backend, then Perlito already has
1) the start of a Perl 5 parser
2) the start of code to output Python
3) a runtime library for what it supports (preferably written in Perl 5 itself)
which means that some work is already done. And that anything further that needs doing on (1) and (3) is shared work between various people and projects.
Ingy's B system (sic) might have the same benefits - anything you can share with anyone else working on similar problems is work you don't have to do yourself.