|laziness, impatience, and hubris|
The Perl Compiler (turning perl scripts into binary executables)by crazyinsomniac (Prior)
|on Jul 10, 2001 at 10:32 UTC||Need Help??|
If you ever wanted to compile a perl script into binary executable, you've probably been told you need to get ActiveState's perl2exe (which ain't free or opensource).
I want to change that.
The "description" is:
The website resides at http://perlcompiler.sourceforge.net/, where you can find more information about the project (currently not containing much more than this post, but will be the place to go for the Perl Compiler). I am new to sourceforge (and running an open source project), so be patient.
This project is GPL'ed (mening it's open source, and if you make any changes to it, you gotta open source it as well).
It is currently in its planning stage, which is the reason for this meditaton.
Help is needed in every possible way.
In particular, me and Jouke (the two members so far), have no idea what is needed programmatically, besides an interface ;).
Originally, we'll develop it as a console application, adding on a gui once we have a console version that works.
Now I've heard of B::Bytecode, and it is experimental, but it's a starting point. I've also run accross perlcc, but we don't wanna produce c-source from the perl sourcecode, we just wanna produce an executable.
So I figure we gotta gain access to a compiled version of a perl program, preferably directly from perln, whether it be in that machine's native machine code or pure perl bytecode and produce a valid binary executable for that machine.
Keep in mind that the language we're leaning for doing this in is preferably perl, but c++ or java will do fine. I'm a little skeemish about pure c, but hey, if you know how to achieve this, it's all good.
This is an open call for any and all ideas on how to achieve this (any relevant experience always preffered ;).ps. - please don't just reply saying you think this is a cool idea, I know it is, I just don't know where to start to implement it ;)