B::Bytecode - Perl compilers bytecode backend
perl -MO=Bytecode[,-H][,-oscript.plc] script.pl
Compiles a Perl script into a bytecode format that could be loaded later by the ByteLoader module and executed as a regular Perl script.
$ perl -MO=Bytecode,-H,-ohi -e print "hi!\n"
$ perl hi
hi!
-b Save all the BEGIN blocks. Normally only BEGIN blocks that require other files (ex. use Foo;) are saved. -H prepend a use ByteLoader VERSION; line to the produced bytecode. -k keep the syntax tree - it is stripped by default. -ooutfile put the bytecode in <outfile> instead of dumping it to STDOUT. -s scan the script for # line .. directives and for <goto LABEL> expressions. When gotos are found keep the syntax tree.
o BEGIN { goto A: while 1; A: } wont even compile. o ?...? and reset do not work as expected. o variables in (?{ ... }) constructs are not properly scoped. o scripts that use source filters will fail miserably.
There are also undocumented bugs and options.THIS CODE IS HIGHLY EXPERIMENTAL. USE AT YOUR OWN RISK.
Originally written by Malcolm Beattie <mbeattie@sable.ox.ac.uk> and modified by Benjamin Stuhl <sho_pi@hotmail.com>.Rewritten by Enache Adrian <enache@rdslink.ro>, 2003 a.d.
| perl v5.8.5 | B::Bytecode (3pm) | 2001-09-21 |