B::Bytecode is 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
Save all the BEGIN blocks. Normally only BEGIN blocks that require other files (ex. use Foo;) are saved.
prepend a use ByteLoader VERSION; line to the produced bytecode.
keep the syntax tree - it is stripped by default.
put the bytecode in instead of dumping it to STDOUT.
scan the script for # line .. directives and for < goto LABEL > expressions. When gotos are found keep the syntax tree.