in reply to Compiling Perl?

There is a CPAN module called Filter (as the Anonymous Monk notes, jogging my memory) which provides the useful Filter::Util::Exec module. What you can do with that is specify a filter to be run on your program before it is executed.

Suppose you were to finish the program you want to obfuscate, then run it through a compression/encryption scheme. You could write a small loader using Filter::Util::Exec that would uncompress/unencrypt the supplied code. You might even implement this as a separate program, and compile that.

Another option from the same family is Filter::decrypt, which may be more suited for this. (I've not seen it used, though.)

Finally, there is always the Camel-recommended dump-undump method. I've never seen that used.