Got some code which would take a Perl grand master to understand without running it? Post it in this section so we can stare at it in awe.

Word of warning, though: Don't be too cocky with your post — almost inevitably someone will post a reply that does the exact same thing in even fewer characters!

New Less than Readable Code
JAPH from subs
No replies — Read more | Post response
by trizen
on Mar 30, 2012 at 18:19
    print"@{sub hacker;[grep{sub Just;$::{$_}eq-1}keys%:: ];sub Perl}[!!_+(++${sub another;_}),$?,//,$#$],$/";;
what is the force?
No replies — Read more | Post response
by tobyink
on Mar 19, 2012 at 12:15

    Requires Acme::What, junk and the (yeah, I know it's cheating)...

    use Acme::What; use junk JElOQ3siZm9yY2UucG0ifT1fX0ZJTEVfXztvdXIkeDsqV0hBVD1zdW . J7cHJpbnQiJHgKIn07KmZvcmNlOjp0aGU9c3ViOmx2YWx1ZXskeH0K; use the force; the force = strong; what is the force?
    perl -E'sub Monkey::do{say$_,for@_,do{($monkey=[caller(0)]->[3])=~s{::}{ }and$monkey}}"Monkey say"->Monkey::do'
A string of pe(a)rls
1 direct reply — Read more / Contribute
by golux
on Mar 12, 2012 at 16:36
    use strict; use warnings; use feature 'say'; ( ) ,say map{ ( ) ,s <..> () ,$ _=lc crypt$_,$&; () ,s [[fy34].+] () ,s [[bg]|(?<=r$)] ( ) ,and $_} ( ) ,@ .= qw = JuzXb NO9(V PeKVj ACUcu =
    say substr+lc crypt(qw $i3 SI$),4,5
JAPH's another Perl hacking
No replies — Read more | Post response
by locked_user zhutingting
on Feb 15, 2012 at 20:48

    New monk here and my first node.

    #!/usr/bin/perl print$_?chr(length()+96):' 'for<<''=~/(?<=D).*?(?=D)/g; ODOOOOOOOOOODOOOOOOOOOOOOOOOOOOOOODOOOOOOOOOOOOOOOOOOOO OODOOOOOOOOOOOOOOOOOOODOOOOOOOOOOOOOOOOOOOODDOOOOOOOOOO OOOOOOOOODODO0OOOOOO000OOODOO000000OOOO0OODOO0OOOOOOOOO ODOOOOOOOOOOO0OOOOO0OOD0OOOOO0OOOOO0OOO0OOOOO0OOOOOOOOO OODOOOOOOOODO0OOOO0OOOOO0OOOO0OOOOO0OOO0OOOOO0OOOOOOOOO OOOOOOOOOOOOO0OOOO0000000OOOO000000OOOO0000000ODOOOOODO OOODOOOOOOOOO0OOOO0OOODO0OOOO0OOOOOOOOO0OOOOO0OOOOOOOOO OOOOOOO0OOOOO0OOOO0OOOOO0OOOO0OOOOOOOOO0OOOOO0OOOODDOOO OOOOOOOO00000OOOOO0OODOO0OOOO0OOOOOOOOD0OOOOO0OOOOOOOOO OOOOOOOOOOOODOOOOODOOOOOOOOOOOOOOOOOODOOOOOOOOOOOODDOOO ODOOOOOOOODODOOODOOOOOOOOOOODOOOOODOOOOOOOOOOOOOOOOOODO

    Use Ctrl-F to find another JAPH ;-)

For this Valentine's day...
1 direct reply — Read more / Contribute
by sandeepsasi
on Feb 03, 2012 at 21:52
    perl -le 'map{$y=$_/12;print map{("@"," ")[-38>$_||$_>-36&&($_**2/800+ +$y**2-1)**3>$_**2*$y**3/1600&&0.2*($_-48)**2-15>15*$y||15*$y>($_-48)* +*2-12]}-40..60}reverse-15..15'
Alien JAPH :)
1 direct reply — Read more / Contribute
by trizen
on Jan 31, 2012 at 16:08
    read*DATA,$_,13**+3;y #{} {}{};s>[\s*]+>>g;$i=length;s/ (.{$i})(.)/$2$1/gx while$i--;eval;; ;for(q\just \.q)another),q)perl hacker)){ for(split$!){$_=$$h{$_}?do{$_=$$h{$_};;;;;;;y <A-Za-z0-9+/>/ -_/&&unpack'u',chr(length()*.75+32 ).$_}:$"x$];$w=(sort{$b<=>$a}map+length,split$\=$/) [$]-$]];s/^(.*?)\s*$/sprintf'%-*s',$w,$1/egm;push@f,[ [split$\],$w]}for$x($?..-//+$]){push@{$x[$x]},@{$f[$_][ $?]}?pop@{$f[$_][$?]}:$"x$f[$_][//]for$?..$#f}$s.="@{+pop @x}$/"while@x;$k=$g=chr(ord$^);for(split$\,$s){$s=$g;$$s=$_ ;++$g}$==135;print$w="\e[H","\e[J";{print$w;print$"x$=,$$_? chop$$_:''for$k..$g;select$,,$,,$,,.01;--$=&&redo}}__END__!!! C**wX*yX****o*f*****ig*pv*AoB**LhCffX*g*I**I*lyI****8*g*FC8L8 8**v*I*LC*g9*8I*o81ga***ICXp*I*Ig8***CIv*wF*B*8*I*8*wX**gCvIA g*LA,L>8*Cg*CCyy*w**cIi**F>*L=8**L*X**='CgCLfg*vC8wXgX*Kef*9* B8C**I*g*gvIALKX*L**C*vy*>I*gX***I*Xg8**w1*}CA*=y8*y******lAyw* =8C*gy*f****f**y*8**loK****K88A**8f=,*II****'g*f*F*F*wf*v**gvCA C8*y*y*LIgK******Xf''***'*I***A*X=yiov***g>C*,*8*g****IAgvA*I*X Fj**gCy*8Xv**89v'*XI*ILy**=A**C1A*8y*v*o**v9KvXyw**f**f**X8**C* *Fy******C*C9**L*vf**C*vF*8gg$*y**v*8v**AL**II*ILKsK*Xyv**gCI** 8**y fI**K*F*8**L*,*I9*C**8*BiFw*fg,A8h8*gF' B*** vg*L *8*C*8*F*fX*CC8*g*B***,Iv88A***** gC8X *1*C C***IF*u******CX8**L>Xi=*** *C** C*v8* **ICI8I*>*KC***8IF*B*8* *oIF* **K** Av*ALvg**C*I*g**'*wBA **FLg *'1''* f=*yLLI*****'ff'* *fo*9g *IA>y F***v*8FIoy'*C* *Lf** I*8f8v *k'y8F*=vw*>g **Kf** vy8*X> *K*L*XgKw*' o*g'vF *1By' gBv*LI*** XX8** KB***' Xv**A'**8 v***of ilgCgC* **'***f y*BA*8i **LI*y* *8IoIv* *oC,y*g ,**gI**= *yC8i 'I8g*L>8 '9{8gB*>A F*18I **8A=*v** *yA'*1pf** *wv** ****,I8l*v *IAB*AC*f**f I**yA** yF*C1*Avp*** **gCv'*****KIyK******8C'g9I**yFK*IL8*A=vo*y C*ABX*F*fv8***AC,*9***wy***IKI****,Kn=i** **Xf8w*L1*w*9***8*,ygf*X**88oKCIC***I** I*8*'*F8IL***CL**y*>*>I*****fCC*8LC*y **XC***A*I*g*C*FA*w****Bv**CfyA*I g*I*y*****A*BI9'g**gy*Iw*L8*lgX *IXXX*A**X**8g*I88*I***B*i*** *y**X*FXAyg****Avgo*F*F*F *XAg*gC*i****,*LI**>* IK*I*Xg****tv**** XCA**8pr*CIg* A*K=***y*
too simple....
No replies — Read more | Post response
by Oromis92
on Jan 24, 2012 at 06:36
    #!/usr/bin/perl while (1) + { ($s,$m,$h)=localtime(); if(length($h)==1){$h="0".$h} $q=$h;$r=$h;$h1=s +ubstr($h,0,1); $h2=substr($h,1,1);if (length($m) == 1){$m="0".$m} $w=$m; $t=$m; $m1=s +ubstr($m,0,1); $m2=substr($m,1,1); if (length($s) == 1) {$s="0".$s} $e=$s;$y=$s;$s1=s +ubstr($s,0,1); $s2=substr($s,1,1);while ($h1>0) { if ($h1 %2 == 0) { $str1.=0; } else + { $str1.=1; } $h1=int($h1/2);} $str1.="0" while length($str1)<4;$str1=reverse($str1) +;while ($m1>0) { if ($m1%2 == 0) { $str2 .= 0; } else { $str2.=1; } $m1 = int($m1/2); + } $str2.= "0" while length($str2) < 4; $str2 = reverse($str2); while ($s1>0) { if ( +$s1 % 2 == 0) {$str3.=0;} else {$str3.=1;} $s1=int($s1/2); } $str3 .= "0" while leng +th($str3) < 4; $str3=reverse($str3);while ($h2>0) { if ($h2 %2 == 0){$str4.=0; } else + {$str4.= 1; } $h2 = int($h2/2); } $str4 .= "0" while length($str4) < 4; $str4 = r +everse($str4); while ($m2>0) { if ($m2 % 2 == 0){ $str5 .= 0; } else { $str5.=1; }$m2 +=int($m2/2); } $str5 .= "0" while length($str5) < 4; $str5 = reverse($str5); whil +e ($s2>0) { if ($s2%2 == 0){ $str6 .= 0;} else {$str6 .= 1; } $s2= int($s2/2); } $str +6 .= "0" while length($str6) < 4;$str6=reverse($str6);while($q>0){ if ($q % 2 == 0) { + $str7 .= 0; } else { $str7 .= 1; } $q = int($q/2); } $str7 .= "0" while length($str7 +) < 6; $str7 = reverse($str7); while ($w>0){ if ($w % 2 == 0){ $str8 .= 0; } else{ $s +tr8 .= 1; }$w= int($w/2);} $str8.="0" while length($str8) < 6; $str8=reverse($str8); +while ($e>0) { if ($e % 2 == 0) { $str9 .= 0; } else { $str9 .= 1; } $e = int($e/2); +} $str9 .= "0" while length($str9) < 6; $str9 = reverse($str9); @x1 = split//,$str1; +@x2 = split//, $str4; @x3 = split// ,$str2; @x4 = split//, $str5; @x5 = split//, + $str3; @x6 = split//, $str6; @x7 = split//, $str7; @x8 = split//, $str8; @x9 = s +plit// ,$str9; print "\n\n\n $x2[0] $x4[0] $x6[0] \n $x2[1] $x3[1] $x4[1] $x +5[1] $x6[1]" ; print "\n $x1[2] $x2[2] $x3[2] $x4[2] $x5[2] $x6[2] \n $x1[3] $x2[3] $ +x3[3] $x4[3]"; print " $x5[3] $x6[3] \n\n\n\n\n @x7\n @x8\n @x9\n\n\n\n\n $r:$t:$y\n\ +n\n"; sleep 1; ( $str1, $str2, $str3, $str4, $str5, $str6, $str7, $str8, $str +9 ) = ""; }
ASCII art maker
2 direct replies — Read more / Contribute
by thomas895
on Dec 24, 2011 at 16:56

    Albeit very simple, I thought I'd share.

    #!/usr/bin/perl my%cd=reverse('a'=>'$','='=>'5','7'=>"'",'d'=>'1',','=>'%','2'=>'r','y +'=>'(','1'=>')','"'=>'3','t'=>'@','e'=>'{','>'=>'4','s'=>'n',"\n"=>'h +','c'=>'"','('=>' ','$'=>';','\\'=>'c','r'=>'d', ':'=>'9','h'=>"\n",'.'=>',','@'=>'t','['=>'\\',';'=>':','f'=>'m','i'=> +'}','n'=>'y',' '=>'s','{'=>'>',']'=>'l','3'=>'[','%'=>'o','9'=>'f','m +'=>'=','_'=>']','l'=>'a','4'=>'2','p'=>'.', ')'=>'e',"'"=>'i','}'=>'7','5'=>'_','o'=>'p');my$r='';while(<DATA>){$r +.=$_;}my$p='';foreach(split("",$r)){$p.=$cd{$_};}chop$p;eval($p)and(p +rint($@)); __DATA__ =(s;" $ds5sioi:h=(s;1{mss5s\hssss\s3n9_3%s3"9)3%s3y9)3sl%hssss\s3n923%s3"9[3 +%s3y9)3sl%hssss\s3n9r3%s3"9'3%s3y9)3sl%hssss\s3n9)3%s3"9f3%s3y9)3sl%h +ssss\s3n9r3%s3"9'3%s3y9)3sl%hssss\s3n9r3%s3"9'3%s3y9)3sl%hssss\s3n9r3 +%s3"9'3%s3y9)3sl%hssss\s3n9r3%s3"9r3%s3n9[3%s3"9r3%s3y9)3sl%hssss\s3n +9r3%s3"9r3%s3n9[3%s3"9r3%s3y9)3sl%hssss\s3n9r3%s3"9r3%s3n9[3%s3"9r3%s +3y9)3sl%hssss\s3n9r3%s3"9'3%s3y9)3sl%hssss\s3n9r3%s3"9'3%s3y9)3sl%hss +ss\s3n9r3%s3"9'3%s3y9)3sl%hssss\s3n9r3%s3"9'3%s3y9)3slhl:h=(son"s5s h +ssssns54s3s3%hssss"s54s;" $d%hssssys54s3cy3he:hhmpd{$" s t;1{mes>h=(stas5st;]:hssssmpd{$" s taes>hssssssss=(s s;@%s;$ses5sn.a}@ s393%s;]se:hssssssssmpd{$" s s)s,,s;$ses>hssssssssssss.d}y@s;n">;@7:hhssssssss7hssss7h7ssssshsshs +hshshsh

    (Note: you may want to download it, or some of it won't work)
    Enjoy! :)

    ~Thomas~
Cubic JAPH
No replies — Read more | Post response
by trizen
on Dec 20, 2011 at 23:20
    +($\,$})=($/,q$@$);@@=split$!=>($@ =$}|'/'=>$:=$@,++$@,$@++,$~=(++$@=> ++$@),$.=$",$_=$/|$}.(+(++$@=>++$@). $~).++$~.$..($;=$}|'!').($^='.'|$}).+ ('/'|$}).$~.($@=$}|'(').($"='%'|$}).(+ +++$:=>++$:,+++$:).$..($:^'"').$".$:.(q },}|$}).$..$@.$;.($}.$}|'#+').$".$:.q|,| );sub f{print@_}sub i(_){my($l,$j)=0;my( $x,$y,$z,$c,$h,$v,$d,$s,$p,$o)=(+@{+pop} ,qw w+ -w,qw\| /\,sub{$j=$_[0];$l+$j>+@@ &&($l=$?);@@[do{$l=$j+$l;$l-$j..$l-1}]}, $?);f$.x($z+1),$c,$h x$x,$c;f$.x($z-$_+1 ),$d,$s->($x),$d,$s->($_-1-$p),$_>$y?!$p &&++$p?do{$o=$z-$y;$c}:$p++?$d:$c:$v for 1..$z;f$c,$h x$x,$c,$p?($s->($z-$o),$d): ($s->($z),$z<$y?$v:$c);f$v,$s->($x),$v, ,$z-1>=$y?$_>=$z?($s->($x),$c):($s->($ z-$_-$o),$d):$y-$_>$z?($s->($z),$v):( $s->($y-$_),$y-$_==$z?$c:$d)for+1..$ y;f$c,$h x$x,$c}+i,,for[24,24,24],[ 1,24,0],[24,1,0],[1,0,24],[24,3,1]
Vec JAPH
No replies — Read more | Post response
by trizen
on Dec 19, 2011 at 23:07
    $_ = [ 74, 116, 113, 113, 28, 92, 104, 104, 108, 95, 91, 103, 20, 67, 87, 99, 92, 15, 86, 78, 79, 86, 79, 91, 20, 19, 00, 73, ]; {vec(${print${$j},$/;$j},$i++ ,8)=$$_[$i]+$i;$$_[$i]&&redo}

    or
    $_=[$j=#]; 101, 98, 102, 108, 28, 69, 111, 108, 108, 23, 87, 99, 99, 103, 90, 86, 98, 15, 62, 82, 94, 87, 10, 81, 73, 74, 81, 74, 86, 15, 2, 31, 6, 17, 0, $i=$j-$j]; {vec($j,$i++,8)=$$_[$i]+$i;$$_[$i]&&redo||`$j`}

Set the new obfuscation standard
Title:
code@?#!:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":


  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.