in reply to perl program compilation

Normally the compiled form isn't dumped to file, perl does the compilation in memory.

You can produce a perl bytecode by using B::Bytecode:

perl -MO=Bytecode,-H -e'print "hello world"' > hi.plc
hi.plc will be an executable, with a first line telling perl how to decode the bytecode (caused by the '-H' option), the rest is a bytecode.