Virtual Solutions : Resources : Documentation : Perl Modules : Home
B::Bytecode
B::Bytecode - Perl compiler's 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.
-
BEGIN { goto A: while 1; A: } won't even compile.
-
?...? and reset do not work as expected.
-
variables in (?{ ... }) constructs are not properly scoped.
-
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.
© Copyright 1997 - 2010 Virtual Solutions. All Rights Reserved.
|