in reply to "no more pepsi" JAPH

It seems as if a perl bug prevented the original code from running on versions previous to 5.8. It sure looks like the bug was fixed in 5.8, but I didn't find any reference to it in perldelta or a quick search of the mailing list archives. Maybe I missed it or it was fixed "by accident" (as if there is any such thing as an accidental bug fix... ;-) If anyone has more information, please fill me in.

The following version runs under, at least, 5.6.1 on Solaris 7 and 5.005_03 on OpenBSD. It isn't that different and the difference doesn't make it a spoiler, but it does give away one small detail. Sigh. Here you go:

perl -le '$_="Just another Perl hacker";/e/;sub AUTOLOAD{eval qq{sub $ +{(caller"Just")[scalar(()="a coke please"=~/e/g)]}}.qq}{(caller"Just" +)[scalar(()="give me a coke"=~/e/g)]=~m(([^\072]*)\$)\x7d};&${(caller +"Just")[scalar(()="coke, no more pepsi"=~/e/g)]}};print+(join$",map{j +oin$,,map{eval"main::$_()"}split//}split),","'
-sauoq
"My two cents aren't worth a dime.";