in reply to My very own little JAPH

++ on the second try, now i can officially say, "i have no bloody clue what its doing", which is always the point of a true obfuscation.

One final thought on seeing the second try, is that you might want to try playing around with obscuring functions, i.e. instead of doing "print $foo", you could do something like "@_=q:print:;push @_,$foo; eval pop;pop;". While thats not an incredibly good example, im sure you could do better.