http://qs321.pair.com?node_id=93296


in reply to Perl in a haystack

Okay, time for some deconstruction. Here we go:
# A fancy way of assigning $_ s//902splitT4'=+DEforIJ<STDIN>iST1337 hAx0rJaybabtuR:another IM;23+6==29;:5AjoincheeseLM4NMJustHG/x; # Make $f into some line noise $f = '451:+-9j'; # Take each character of $f, and put it into an element in @f @f=$f=~/./g; # Add some more line noise to the end of $_ s/$/FEDfBA1deadNI!reverseOPNIN84ONDHFJU5KKLS:OKjustGJIKLMIFJKM1/xg; # Get rid of all but elements 0-3 of the @f array @f=@f[0..3]; # Weee, add yet some more line noise to the end of $_ s/$/all0your0baseNO4ANOD1MikPerlJustjaphj9:JAPhacker^K1japerlh5:NB4got +cheese?1PE RL5/gx; # Get rid of any newlines or 8's from $_ s/\n|8//g; # Put all of @f back into $f, this time delimited by a | $f=join'|',@f; # Add's the text "join!for299!UNLAA5" to the end of $_ s%$%join!for299!UNLAA5%; # Throw some numbers into the @_ array while(/$f/g) { $_[$i++]=pos; } # Sets $i equal to "false" $i=40==2; # Reverse the order of the contents in @_ @_ = reverse @_; # Loop through @_ for(@_) { # Change the values of the @_ array. # $_ is local to this loop, not the previous $_ we # were using. # Since $_ is an actual alias, we are modifying the # contents of @_ directly # Since $i is currently set to "false", ++$i increments # it to 1 (thanks vynce) $_ -= $_[++$i]; # @; -- thats an interesting variable to use. # As far as I can tell, it's not a special variable, # so it just helps in obfuscating things a bit more. # It looks here like all the numbers in the # @_ array + 96 are equal to "justanotherperlhacker" @;=(chr($_ + 96),@;) } # Here "for" is used as a statement modifier, and ends up # acting as a join operator (thanks tye, chemboy). # More later.... $a.=$_for@;;$_=$a;s{([pj])};\u$&;g;@_=@{[4,12,17]}; for $a (@_) { s[.{$a}];$& ; } print or sort or warn or die "Boom."
-Eric

Updated: 16:52 EST