究竟有多少种打印出 just another perl hacker 的方法呢?
看看就知道了 :-)
%% #JoeCamel on http://www.perlmonks.com/ #note: requires Perl5.6.0 or better #!/usr/bin/perl -w use strict;
# A tribute to one of the greatest films of all time. my(%primate, $monolith, $evolution, $contact);
$_='primate-> throw ( "Bone" ) ; goto; $$monolith ; bless %primate;$evolution =~m/?+*/; #/*+?/m~= *humanIntellect ++; $Discovery =~ m . [ [::]>>=<>=<>=<>=(-) ]. ; require 2001; exists($malfunction )#open $podBayDoors or die ; HAL-> sing ("Daisy");sleep()*' ;my@universe= qw(15 1 6 4 35 1 12 2 23 2 14 1 8 2 0 5 25 1 39 3 7 2);my $God ;$monolith="******" ; my @spaceTime = split/;/,$_ ; while (my($space,$time )= splice (@universe,0 ,2) ) { my $journey = shift @spaceTime; eval " $journey; "; $contact = substr ( $@, $space, $time ) ; if ( $space != (( " dimension " =~ // ) +1+4+9 ) ) {print $contact; next; }my $starChild=$contact ;print uc$starChild
} %% #!/usr/local/bin/perl undef$/;$_=<DATA>;y/ODA\n / /ds;@yoda=map{length}split;print chr oct join('',splice(@yoda,0,3))-111 while@yoda; __DATA__ 00O00O000O00O0000 000O DD000000O0 0DO0000000O0000O00 O00000 00O00000O0O 0000 0O0 O00 O00 00D 0DO 00O0 0O0 00D 000 DO0D00000D 0O00 DOD 000000O00000 000 O00O DD0000D000O0 000 0O00O0000D00DO 0OD D00O000D00O0 00000DO00O0 000 000O 00D0 O0D O00000O0DO0 0O000 OD0D O00O0 0000 DDDO000000 O00O000000 0O000 O00DDO 00000 0O0D00 00O0O00000O 0O00O000000 0O0O00OD00000DDD 00O 0D0 DDD D0O 00O0D 00000O00000000 O00 DO0 D00D00O000 00D00 D0O00 O0000 000O000O00DO 000 00O0 0OD00 O00 000 0O000D000O00O0 000 0D0O000000O00O00 0 0 0O0D 0000 0O0 0O0000000O000O
[editorial note: would the author of this JAPH *please* stand up? ] %% #Erudil from http://www.perlmonks.com/ #!/usr/bin/perl -w # camel code use strict;
$_='ev al("seek\040D ATA,0, 0;");foreach(1..3) {<DATA>;}my @camel1hump;my$camel; my$Camel ;while( <DATA>){$_=sprintf("%-6 9s",$_);my@dromedary 1=split(//);if(defined($ _=<DATA>)){@camel1hum p=split(//);}while(@dromeda ry1){my$camel1hump=0 ;my$CAMEL=3;if(defined($_=shif t(@dromedary1 ))&&/\S/){$camel1hump+=1<<$CAMEL;} $CAMEL--;if(d efined($_=shift(@dromedary1))&&/\S/){ $camel1hump+=1 <<$CAMEL;}$CAMEL--;if(defined($_=shift( @camel1hump))&&/\S/){$camel1hump+=1<<$CAMEL;}$CAMEL--;if( defined($_=shift(@camel1hump))&&/\S/){$camel1hump+=1<<$CAME L;;}$camel.=(split(//,"\040..m`{/J\047\134}L^7FX"))[$camel1h ump];}$camel.="\n";}@camel1hump=split(/\n/,$camel);foreach(@ camel1hump){chomp;$Camel=$_;y/LJF7\173\175`\047/\061\062\063\ 064\065\066\067\070/;y/12345678/JL7F\175\173\047`/;$_=reverse; print"$_\040$Camel\n";}foreach(@camel1hump){chomp;$Camel=$_;y /LJF7\173\175`\047/12345678/;y/12345678/JL7F\175\173\0 47`/; $_=reverse;print"\040$_$Camel\n";}';;s/\s*//g;;eval; eval ("seek\040DATA,0,0;");undef$/;$_=<DATA>;s/\s*//g;( );;s ;^.*_;;;map{eval"print\"$_\"";}/.{4}/g; __DATA__ \124 \1 50\145\040\165\163\145\040\157\1 46\040\1 41\0 40\143\141 \155\145\1 54\040\1 51\155\ 141 \147\145\0 40\151\156 \040\141 \163\16 3\ 157\143\ 151\141\16 4\151\1 57\156 \040\167 \151\164\1 50\040\ 120\1 45\162\ 154\040\15 1\163\ 040\14 1\040\1 64\162\1 41\144 \145\ 155\14 1\162\ 153\04 0\157 \146\ 040\11 7\047\ 122\1 45\15 1\154\1 54\171 \040 \046\ 012\101\16 3\16 3\15 7\143\15 1\14 1\16 4\145\163 \054 \040 \111\156\14 3\056 \040\ 125\163\145\14 4\040\ 167\1 51\164\1 50\0 40\160\ 145\162 \155\151 \163\163 \151\1 57\156\056 %% #MeowChow from http://www.perlmonks.com/
$ _= qq .CG T--A A---T A----T C----G T----A A---T G--C CG CG C--G G---C G----C C----G A----T C---G G--C AT CG A--T A---T G----C A----T G----C C---G A--T GC CG G--C A---T G----C G----C G----C A---T T--A AT CG T--A C---G A----T A----T G----C A---T A--T CG TA T--A G---C G----C C----G A----T C---G G--C CG TA T--A C---G T----A C----G A----T C---G G--C GC TA G--C C---G G----C G----C G----C A---T T--A CG AT G--C A---T A----T C----G C----G A---T A--T CG CG G--C G---C G----C A----T T----A C---G G--C CG TA A--T A---T G----C A----T A----T C---G A--T GC TA G--C C---G T----A G----C G----C C---G T--A AT CG G--C G---C T----A C----G G----C C---G C--G CG AT T--A C---G G----C G----C A----T T---A G--C CG TA G--C A---T G----C A----T G----C .;@_{A => C => G=> T=>} =0..3 ;s;. * (\w).* (\w).* \n;$_ { $- ++ /9 %2?$ 2:$ 1 };gex; s;(.)( .)(.)(. );chr 64*$ 1+ 16 *$2+ 4 *$ 3 +$ 4 ;gex ; eval
%% #Clinton Pierce #note: Requires 5.6.0 or better
'% * % % * % %<> * % ~ * % % * % * * % * * * % % * * % * % *<> * % ~ % % % * % * * * % * % % % % * % % % % % % * % % * % % * % % ^ * % % % % *[] % % * * % * * % % % % * % % % % % % * * % * * @ * @ % * % % % ^ % * % * % * * % % * % <> % % % % * % %() % % % * * * % % * % % * * % * * * * % * * % % * * * % * * * % % * % % *[]<> % % % % * % * * * % % *<> % * * % % % * * % * * * \ * %\ * * * %/ \ # % * * % % % *\ * /\ * *// % %\ <>\ // % %/ % \// % * % * * *\ \|| \ \/ / % %// \ \ *\ /<> %// %// % %<> * % * %\ \ | | ||// % || // \// % // * * * % %{} % * ----\ \ | / %||// / ---/ / * % % * % * *\ ____\ \| | / / / /----/ * % \ ----\ | / // / \ \ / /' =~m/(.*)/s;$_=$1; s![-\\|_/\s]!!g ;%e=('%',0, '^',132918, '~'=>18054, '@'=>19630, '*' =>0b01, '#'=>13099, '[]'=>4278, '<>'=>2307, '{}'=>9814, '()',2076); for $a(keys %e){$e{$a}= sprintf"%b" , $e{$a};} $y= qq{(}.join( '|',map "\Q$_\E" ,keys %e).qq{)};s/$y /$e{$1}/gex;print pack"B*",$_;
%% #Kickstart from http://www.perlmonks.com/ #note: a slight valentine variation :)
$LOVE= AMOUR. true.cards. ecstacy.crush .hon.promise.de .votion.partners. tender.truelovers. treasure.affection. devotion.care.woo.baby.ardor.romancing. enthusiasm.fealty.fondness.turtledoves. lovers.sentiment.worship.sweetling.pure .attachment.flowers.roses.promise.poem; $LOVE=~ s/AMOUR/adore/g; @a=split(//, $LOVE); $o.= chr (ord($a[1])+6). chr (ord($a[3])+3). $a[16]. $a[5]. chr (32). $a[0]. $a[(26+2)]. $a[27]. $a[5].$a[25]. $a[8].$a[3].chr (32).$a[29]. $a[8].$a[3]. $a[62].chr(32).$a[62]. $a[2].$a[38].$a[4]. $a[3].'.'; print $o; %% # chipmunk (aka Ronald J Kimball) <[email protected]> #!perl -l $_={1..28};$/=[$_,P,a..z,J,$"];print+map{$_&1?$/->{$_}:$/->[$_|1]} (27,21,19,20,28,1,14,15,20,8,5,18,28,0,5,18,12,28,8,1,3,11,5,18) %% #Ronald J Kimball <[email protected]> $~='`';$_=$:=$~|'%';$;=$^='/'|$~;$;++;$\=$~|"'";$;++;$:.=++$;;$/=++$;;+$\++;$_.= '#'|$~;$,=++$/;$_.="$\$^$\"";++$,;$_.='@'|'*'&~'!';$_.="$,$;$/$\"";$_.+='!.'|$~. $~;$_.="$^$/$\$:$\"";$_.='@'|':'&~'*';$_.=$:;$_.=$^&'|';$_.=$".$\;$_.=+"$~$~$~"| '!#+';++$.;$.++;`$_$:,>&$.`; %% #Abigail perl -wle 'print "Prime" if (1 x shift) !~ /^1?$|^(11+?)\1+$/' %% #Abigail perl -wle 'print "Prime" if (0 x shift) !~ m 0^\0?$|^(\0\0+?)\1+$0' %% #Abigail perl -wle 'print "Prime" if ("m" x shift) !~ m m^\m?$|^(\m\m+?)\1+$mm' %% #Abigail perl -wle '$, = " "; print grep {(1 x $_) !~ /^(11+)\1+$/} 2 .. shift' %% #Abigail perl -wle '(1 x $_) !~ /^(11+)\1+$/ && print while ++ $_' %% #Abigail perl -wle '(1 x $_) !~ /^(11+)\1+$/ && print while ++ $_' | perl -pe 'INIT {<>}' %% #Abigail perl -wle 'INIT {$_ ++} (1 x $_) !~ /^(11+)\1+$/ && print while ++ $_' %% #Abigail perl -wle '(1 .1 x $_) !~ /^(11+)\1+$/ && print $_ + 1 while ++ $_' %% #Abigail perl -wle '(1 x $_) !~ /^(11+)\1+$/ && print while ($_ ||= 1) ++' %% #Abigail perl -wle '(2 x $_) !~ /^(2|(22+)\2+)$/ && print while ++ $_' %% #Abigail perl -weprint\<\<EOT\; -eJust -eanother -ePerl -eHacker -eEOT %% #Abigail perl -wle\$_=\<\<EOT\;y/\\n/\ /\;print\; -eJust -eanother -ePerl -eHacker -eEOT %% #Abigail perl -wleprint -eqq-@{[ -eqw+ -eJust -eanother -ePerl -eHacker -e+]}- %% #Abigail perl -wleprint -eqq-@{[ -eqw\\- -eJust -eanother -ePerl -eHacker -e\\-]}- %% #Abigail perl -swleprint -- -_='Just another Perl Hacker' %% #Abigail perl -swleprint -- -_=Just\ another\ Perl\ Hacker %% #Abigail perl5.004 -wMMath::BigInt -e'$^V=Math::BigInt->new(qq]$^F$^W783$[$%9889$^F47] .qq]$|88768$^W596577669$%$^W5$^F3364$[$^W$^F$|838747$[8889739$%$|$^F673$%$^W] .qq]98$^F76777$=56]);$^U=substr($]=>$|=>5)*(q.25..($^W=@^V))=>do{print+chr$^V %$^U;$^V/=$^U}while$^V!=$^W' %% #Abigail perl -we 'print split /(?=(.*))/s => "Just another Perl Hacker\n";' %% #Abigail perl -MLWP::UserAgent -MHTML::TreeBuilder -MHTML::FormatText -wle'print +( HTML::FormatText -> new -> format (HTML::TreeBuilder -> new -> parse ( LWP::UserAgent -> new -> request (HTTP::Request -> new ("GET", "http://work.ucsd.edu:5141/cgi-bin/http_webster?isindex=perl")) -> content)) =~ /(.*\))[-\s]+Addition/s) [0]' %% #Abigail perl -we '$_ = q ;4a75737420616e6f74686572205065726c204861636b65720as;; for (s;s;s;s;s;s;s;s;s;s;s;s) {s;(..)s?;qq qprint chr 0x$1 and \161 ssq;excess;}' %% #Abigail perl -e '$_ = q *4a75737420616e6f74686572205065726c204861636b65720a*; for ($*=******;$**=******;$**=******) {$**=*******s*..*qq} print chr 0x$& and q qq}*excess********}' %% #Abigail perl -we '$_ = q ?4a75737420616e6f74686572205065726c204861636b65720as?;??; for (??;(??)x??;??) {??;s;(..)s?;qq ?print chr 0x$1 and \161 ss?;excess;??}' %% #Abigail perl -e 'for (s??4a75737420616e6f74686572205065726c204861636b65720as?;??;??) {s?(..)s\??qq \?print chr 0x$1 and q ss\??excess}' %% #Abigail perl -e '$a = q 94a75737420616e6f74686572205065726c204861636b65720a9 and ${qq$\x5F$} = q 97265646f9 and s g..g; qq e\x63\x68\x72\x20\x30\x78$&eggee; {eval if $a =~ s e..eqq qprint chr 0x$& and \x71\x20\x71\x71qeexcess}' %% #Abigail perl -MTime::JulianDay -lwe'@r=reverse(M=>(0)x99=>CM=>(0)x399=>D=>(0)x99=>CD=>( 0)x299=>C=>(0)x9=>XC=>(0)x39=>L=>(0)x9=>XL=>(0)x29=>X=>IX=>0=>0=>0=>V=>IV=>0=>0 =>I=>$==-2449231+gm_julian_day+time);do{until($=<$#r){$_.=$r[$#r];$=-=$#r}for(; !$r[--$#r];){}}while$=;$,="\x20";print+$_=>September=>MCMXCIII=>=>=>=>=>=>=>=>' %% #Abigail sub _'_{$_'_=~s/$a/$_/}map{$$_=$Z++}Y,a..z,A..X;*{($_::_=sprintf+q=%X==>"$A$Y". "$b$r$T$u")=~s~0~O~g;map+_::_,U=>T=>L=>$Z;$_::_}=*_;sub _{print+/.*::(.*)/s};;; *_'_=*{chr($b*$e)};*__=*{chr(1<<$e)}; # Perl 5.6.0 broke this... _::_(r(e(k(c(a(H(__(l(r(e(P(__(r(e(h(t(o(n(a(__(t(us(J()))))))))))))))))))))))) %% #Abigail $"=$,;*{;qq{@{[(A..Z)[qq[0020191411140003]=~m[..]g]]}}}=*_=sub{print/::(.*)/}; $\=$/;q<Just another Perl Hacker>->(); %% #Abigail $"=$,;*{;qq{@{[(A..Z)[qq[0020191411140003]=~m[..]g]]}}}=*_; sub _ {push @_ => /::(.*)/s and goto &{ shift}} sub shift {print shift; @_ and goto &{+shift}} Hack ("Just", "Perl ", " ano", "er\n", "ther "); # YYYYMMDD %% #Abigail perl -wle '$, = " "; sub AUTOLOAD {($AUTOLOAD =~ /::(.*)/) [0];} print+Just (), another (), Perl (), Hacker ();' %% #Abigail perl -we '$@="\145\143\150\157\040\042\112\165\163\164\040\141\156\157\164". "\150\145\162\040\120\145\162\154\040\110\141\143\153\145\162". "\042\040\076\040\057\144\145\166\057\164\164\171";`$@`' %% #Abigail sub f{sprintf$_[0],$_[1],$_[2]}print f('%c%s',74,f('%c%s',117,f('%c%s',115,f( '%c%s',116,f('%c%s',32,f('%c%s',97,f('%c%s',0x6e,f('%c%s',111,f('%c%s',116,f( '%c%s',104,f('%c%s',0x65,f('%c%s',114,f('%c%s',32,f('%c%s',80,f('%c%s',101,f( '%c%s',114,f('%c%s',0x6c,f('%c%s',32,f('%c%s',0x48,f('%c%s',97,f('%c%s',99,f( '%c%s',107,f('%c%s',101,f('%c%s',114,f('%c%s',10,))))))))))))))))))))))))) %% #Abigail sub f{sprintf'%c%s',$_[0],$_[1]}print f(74,f(117,f(115,f(116,f(32,f(97, f(110,f(111,f(116,f(104,f(0x65,f(114,f(32,f(80,f(101,f(114,f(0x6c,f(32, f(0x48,f(97,f(99,f(107,f(101,f(114,f(10,q ff))))))))))))))))))))))))) %% #Abigail # Perl 5.6.0 broke this. %0=map{reverse+chop,$_}ABC,ACB,BAC,BCA,CAB,CBA;$_=shift().AC;1while+s/(\d+)((.) (.))/($0=$1-1)?"$0$3$0{$2}1$2$0$0{$2}$4":"$3 => $4\n"/xeg;print#Towers of Hanoi %% #Abigail perl -wlpe '}{$_=$.' file # Count the number of lines. %% #Abigail perl -wlpe '}$_=$.;{' file # Count the number of lines. %% #Abigail perl -wlpe '}{$_=$.}{' file # Count the number of lines. %% #Abigail perl -wlpe '}{*_=*.}{' file # Count the number of lines. %% #Abigail perl -wlne '}for($.){print' file # Count the number of lines. %% #Abigail perl -wlne '}{print$.' file # Count the number of lines. %% #Abigail perl -wlne '}print$.;{' file # Count the number of lines. %% #Abigail perl -Mstrict='}); print "Just another Perl Hacker"; ({' -le1 %% #Abigail srand 123456;$-=rand$_--=>@[[$-,$_]=@[[$_,$-]for(reverse+1..(@[=split //=>"IGrACVGQ\x02GJCWVhP\x02PL\x02jNMP"));print+(map{$_^q^"^}@[),"\n" %% #Abigail package Just_another_Perl_Hacker; sub print {($_=$_[0])=~ s/_/ /g; print } sub __PACKAGE__ { & print ( __PACKAGE__)} & __PACKAGE__ ( ) %% #Abigail perl -e '* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % %; BEGIN {% % = ($ _ = " " => print "Just Another Perl Hacker\n")}' %% #Abigail perl -we 'print q{print q{print q{print q{print q{print q{print q{print q{print qq{Just Another Perl Hacker\n}}}}}}}}}' |\ perl -w | perl -w | perl -w | perl -w | perl -w | perl -w | perl -w | perl -w %% #Abigail echo "==== ======= ==== ======"|perl -pes/=/J/|perl -pes/==/us/|perl -pes/=/t/\ |perl -pes/=/A/|perl -pes/=/n/|perl -pes/=/o/|perl -pes/==/th/|perl -pes/=/e/\ |perl -pes/=/r/|perl -pes/=/P/|perl -pes/=/e/|perl -pes/==/rl/|perl -pes/=/H/\ |perl -pes/=/a/|perl -pes/=/c/|perl -pes/=/k/|perl -pes/==/er/|perl -pes/=/./; %% #Abigail sub J::FETCH{Just }$_.='print+"@{[map';sub J::TIESCALAR{bless\my$J,J} sub A::FETCH{Another}$_.='{tie my($x),$';sub A::TIESCALAR{bless\my$A,A} sub P::FETCH{Perl }$_.='_;$x}qw/J A P';sub P::TIESCALAR{bless\my$P,P} sub H::FETCH{Hacker }$_.=' H/]}\n"';eval;sub H::TIESCALAR{bless\my$H,H} %% #Abigail package Z;use overload'""'=>sub{$b++?Hacker:Another}; sub TIESCALAR{bless\my$y=>Z}sub FETCH{$a++?Perl:Just} $,=$";my$x=tie+my$y=>Z;print$y,$x,$y,$x,"\n";#Abigail %% #Abigail sub A::TIESCALAR{bless\my$x=>A};package B;@q[0..3]=qw/Hacker Perl Another Just/;use overload'""'=>sub{pop @q};sub A::FETCH{bless\my $y=>B}; tie my $shoe => qq 'A';print "$shoe $shoe $shoe $shoe\n"; %% #Abigail sub A::TIESCALAR{bless\my$x=>'A'};package B;@q=qw/Hacker Perl Another Just/;use overload'""',sub{pop @q};sub A::FETCH{bless \my $y=>B};tie my$shoe=>'A';print"$shoe $shoe $shoe $shoe\n"; %% #Abigail tie $" => A; $, = " "; $\ = "\n"; @a = ("") x 2; print map {"@a"} 1 .. 4; sub A::TIESCALAR {bless \my $A => A} # Yet Another silly JAPH by Abigail sub A::FETCH {@q = qw /Just Another Perl Hacker/ unless @q; shift @q} %% #Abigail sub camel (^#87=i@J&&&#]u'^^s]#'#={123{#}7890t[0.9]9@+*`"'***}A&&&}n2o}00}t324i; h[{e **###{r{+P={**{e^^^#'#i@{r'^=^{l+{#}H***i[0.9]&@a5`"':&^;&^,*&^$43##@@####; c}^^^&&&k}&&&}#=e*****[]}'r####'`=437*{#};::'1[0.9]2@43`"'*#==[[.{{],,,1278@#@); print+((($llama=prototype'camel')=~y|+{#}$=^*&[0-9]i@:;`"',.| |d)&&$llama."\n"); %% #Abigail perl -wle 'print prototype sub "Just another Perl Hacker" {};' %% #Abigail perl -wle 'sub _ "Just another Perl Hacker"; print prototype \&_' %% #Abigail split // => '"'; ${"@_"} = "/"; split // => eval join "+" => 1 .. 7; *{"@_"} = sub {foreach (sort keys %_) {print "$_ $_{$_} "}}; %{"@_"} = %_ = (Just => another => Perl => Hacker); &{%{%_}}; %% #Abigail $" = "/"; split // => eval join "+" => 1 .. 7; *{"@_"} = sub {foreach (sort keys %_) {print "$_ $_{$_} "}}; %_ = (Just => another => Perl => Hacker); &{%_}; %% #Abigail $" = "/"; split $, => eval join "+" => 1 .. 7; *{"@_"} = sub {foreach (sort keys %_) {print "$_ $_{$_} "}}; %{"@_"} = %_ = (Just => another => Perl => Hacker); &{%{%_}}; %% #Abigail $_ = "\x3C\x3C\x45\x4F\x54"; s/<<EOT/<<EOT/e; print; Just another Perl Hacker EOT %% #Abigail $_ = "\x3C\x3C\x45\x4F\x54"; print if s/<<EOT/<<EOT/e; Just another Perl Hacker EOT %% #Abigail $_ = "\x3C\x3C\x45\x4F\x54" and s/<<EOT/<<EOT/e and print; Just another Perl Hacker EOT %% #Abigail $_ = "\x3C\x3C\x45\x4F\x54\n" and s/<<EOT/<<EOT/ee and print; "Just another Perl Hacker" EOT %% #Abigail perl -Mstrict -we '$_ = "goto F.print chop;\n=rekcaH lreP rehtona tsuJ";F1:eval' %% #Abigail #!/opt/perl/bin/perl -- # No trailing newline after the last line! BEGIN{$|=$SIG{__WARN__}=sub{$_=$_[0];y-_- -;print/(.)"$/;seek _,-open(_ ,"+<$0"),2;truncate _,tell _;close _;exec$0}}//rekcaH_lreP_rehtona_tsuJ %% #Abigail #!/opt/perl/bin/perl -- # Remove trailing newline! BEGIN{$SIG{__WARN__}=sub{$_=pop;y-_- -;print/".*(.)"/; truncate$0,-1+-s$0;exec$0;}}//rekcaH_lreP_rehtona_tsuJ %% #Abigail BEGIN {$^H {q} = sub {pop and pop and print pop}; $^H = 2**4.2**12} "Just "; "another "; "Perl "; "Hacker\n"; %% #Abigail BEGIN {$^H {q} = sub {$_ [1] =~ y/S-ZA-IK-O/q-tc-fe-m/d; $_ [1]}; $^H = 0x28100} print "Just another PYTHON hacker\n"; %% #Abigail BEGIN {$^H {join "" => ("a" .. "z") [8, 13, 19, 4, 6, 4, 17]} = sub {["", "Just ", "another ", "Perl ", "Hacker\n"] -> [shift]}; $^H = hex join "" => reverse map {int ($_ / 2)} 0 .. 4} print 1, 2, 3, 4; %% #Abigail BEGIN {$^H {join "" => ("a" .. "z") [8, 13, 19, 4, 6, 4, 17]} = sub {["", "Just ", "another ", "Perl ", "Hacker"] -> [shift]}; $^H = hex join "" => reverse map {int ($_ / 2)} 0 .. 4} print 1, 2, 3, 4, "\n"; %% #Abigail BEGIN {my $x = "Knuth heals rare project\n"; $^H {integer} = sub {my $y = shift; $_ = substr $x => $y & 0x1F, 1; $y > 32 ? uc : lc}; $^H = hex join "" => 2, 1, 1, 0, 0} print 52,2,10,23,16,8,1,19,3,6,15,12,5,49,21,14,9,11,36,13,22,32,7,18,24; %% #Abigail print v74.117.115.116.32; print v97.110.111.116.104.101.114.32; print v80.101.114.108.32; print v72.97.99.107.101.114.10; %% #Abigail print 74.117.115.116.32; print 97.110.111.116.104.101.114.32; print 80.101.114.108.32; print 72.97.99.107.101.114.10; %% #Abigail print v74.117.115.116.32, v97.110.111.116.104.101.114.32, v80.101.114.108.32, v72.97.99.107.101.114.10; %% #Abigail print 74.117.115.116.32, 97.110.111.116.104.101.114.32, 80.101.114.108.32, 72.97.99.107.101.114.10; %% #Abigail print v74.117.115.116.32.97.110.111.116.104.101.114. v32.80.101.114.108.32.72.97.99.107.101.114.10; %% #Abigail print 74.117.115.116.32.97.110.111.116.104.101.114. 32.80.101.114.108.32.72.97.99.107.101.114.10; %% #Abigail map{${+chr}=chr}map{$_=>$_^ord$"}$=+$]..3*$=/2; print "$J$u$s$t $a$n$o$t$h$e$r $P$e$r$l $H$a$c$k$e$r\n"; %% #Abigail perl -we'$;=$";$;{Just=>another=>Perl=>Hacker=>}=$/;print%;' %% #Abigail $; # A lone dollar? =$"; # Pod? $; # The return of the lone dollar? {Just=>another=>Perl=>Hacker=>} # Bare block? =$/; # More pod? print%; # No right operand for %? %% #Abigail @;=split//=>"Joel, Preach sartre knuth\n";$;=chr 65;%;=map{$;++=>$_} 0,22,13,16,5,14,21,1,23,11,2,7,12,6,8,15,3,19,24,14,10,20,18,17,4,25 ;print@;[@;{A..Z}]; %% #Abigail $_ = "\112\165\163\1648\141\156\157\164\150\145\1628\120\145" . "\162\1548\110\141\143\153\145\162\0128\177" and &japh; sub japh {print "@_" and return if pop; split /\d/ and &japh} %% #Abigail sub _ {$_ = shift and y/b-yB-Y/a-yB-Y/ xor !@ _? exit print : print and push @_ => shift and goto &{(caller (0)) [3]}} split // => "KsvQtbuf fbsodpmu\ni flsI " xor & _ %% #Abigail :$:=~s:$":Just$&another$&:;$:=~s: :Perl$"Hacker$&:;chop$:;print$:#: %% #Abigail :;$:=~s: -:;another Perl Hacker :;chop $:;$:=~y :;::d;print+Just. $:; %% #Abigail :;$:=~s: -:;another Perl Hacker :;chop $:;$:=~y:;::d;print+Just.$: %% #Abigail perl -le 's[$,][join$,,(split$,,($!=85))[(q[0006143730380126152532042307]. q[41342211132019313505])=~m[..]g]]e and y[yIbp][HJkP] and print' %% #Abigail perl -wle 'eval {die ["Just another Perl Hacker"]}; print ${$@}[$#{@${@}}]' %% #Abigail perl -we 'eval {die ["Just another Perl Hacker\n"]}; print ${$@}[$#{@${@}}]' %% #Abigail perl -wle 'eval {die ["Just another Perl Hacker"]}; print ${${@}}[$#{@{${@}}}]' %% #Abigail perl -we 'eval {die ["Just another Perl Hacker\n"]}; print ${${@}}[$#{@{${@}}}]' %% #Abigail perl -wle 'eval {die [[qq [Just another Perl Hacker]]]};; print ${${${@}}[$#{@{${@}}}]}[$#{${@{${@}}}[$#{@{${@}}}]}]' %% #Abigail $_ = "\nrekcaH lreP rehtona tsuJ"; my $chop; $chop = sub {print chop; $chop}; $chop -> () -> () -> () -> () -> () -> () -> () -> () -> () -> () -> () -> () -> () -> () -> () -> () -> () -> () -> () -> () -> () -> () -> () -> () -> () %% #Abigail perl -we '$| = 1; $_ = "Just another Perl Hacker\n"; print substr $_ => 0, 1 => "" while $_ && sleep 1 => 1' %% #Abigail ($;,$_,$|,$\)=("\@\x7Fy~*kde~box*Zoxf*Bkiaox"," "x25,1,"\r"); {vec($_=>1+$"=>$^F<<$^F)=ord($/^substr$;=>$"=int rand 24=>1); print&&select$,,$,,$,,$|/($|+tr/ //c);redo if y/ //>$^F**2}; %% #Abigail ($;,$_,$|,$\)=("\@\x7Fy~*kde~box*Zoxf*Bkiaox","#"x25,1,"\r"); s/./ /;{vec($_=>1+$"=>8)=ord($/^substr$;=>$"=int rand 24=>1); print&&select$,,$,,$,,$|/($|+tr/#//c);redo if y/#//};sleep 1; %% #Abigail $=-=4*++$|;{print$"x--$==>"\@\x7Fy~*kde~box*Zoxf*Bkiaox \r" ^ $/x24if!select$,,$,,$,,join+q=.==>$^W=>$|;$=&&redo}sleep$|; %% #Abigail @_=map{[$!++,$_^$/]}split$?"\@\x7Fy~*kde~box*Zoxf*Bkiaox";$\="\r"; $|=++$*;do{($#,$=)=(rand@_,rand@_);@_[$#,$=]=@_[$=,$#]}for($*..@_); for$:($|..@_-$|){for($|..@_-$:){@_[$_-$|,$_]=@_[$_=>$_-$*]if$_[$_][ $篯<$_[$_-$*][$芣;print+map{$_->[$|]}@_;select$?$?$?0.1}}print$/ %% #Abigail @_=map{[$!++=>$_^$/]}split$?>"\@\x7Fy~*kde~box*Zoxf*Bkiaox";$\="\r"; $|=++$*;do{($#=>$=)=(rand@_=>rand@_);@_[$#,$=]=@_[$=,$#]}for($*..@_); for$:($|..@_-$|){for($|..@_-$:){@_[$_-$|,$_]=@_[$_=>$_-$*]if$_[$_][$?]<$_[$_-$*][$芣;print+map{$_->[$|]}@_;select$?$?$?"$[.$|"}}print$/ %% #Abigail BEGIN {print "Just " } CHECK {print "another "} INIT {print "Perl " } END {print "Hacker\n"} %% #Abigail perl -wle'print"牉圪莘釉偎纶莪纶陷环撐纶"^"\x80"x24' %% #Abigail my $qr = qr/^.+?(;).+?\1|;Just another Perl Hacker;|;.+$/; $qr =~ s/$qr//g; print $qr, "\n"; %% #Abigail use lib sub {($\) = split /\./ => pop; print $"}; eval "use Just" || eval "use another" || eval "use Perl" || eval "use Hacker"; %% #Alex Gough ([email protected]) #!/usr/bin/perl use Quantum::Entanglement qw(:DEFAULT :complex); $language=entangle(1,'python',1/i,'C',i*i,'perl',1/i**2,'Java',i**5,'C#'); print "Just another $language hacker,\n" if $language eq 'perl'; %% #John Porter <[email protected]> eval { 62->lZRopcwjoXyup_yuGpXcxbyu() }; $@ =~ s/"(.*?)"/"ss"/; print((split//,$@)[map{ord($_)-62}split//,$1],",\n"); %% #Casey West my $html;$html.=$_ while<DATA>;$html=~s/[^ ] <([^\/])/ ' <'.chr(ord($1)-32)/ges;$html=~s/\n//gs;$html=~s/^ / /;$html=~s/ {2,3}/SPC/g;$html=~s/ //g;$html=~ s/SPC/ /g ;$html=~s/<([^\/])/'<'.chr(ord($1)-1)/ge;print join"\n" ,join('',($html=~m/(?:<([^\/])|( ))/g)),'';# Formatting __END__ <kbd>Type some HTML</kbd> into a <var>Variable</var>. and you set it's <tt>value</tt>. <u>Amazing!</u> <br> <object code="srccode"><param name="code" value="Perl"> <u>You don't have a Perl enabled browser :-( shame</u> <img alt="Perl forever!" src="perl.png"></object><form> Quote this text:<samp>Perl. Live it, love it, learn it. </samp> <q>Perl. Live it, love it, learn it. </q><font color="#FF0000">Perl is the only cure to your headaches </font><script language="JavaScript">function push_me() {alert('Javascript won\'t help!') }</script><marquee>IE won't help! </marquee> <i>When this just hurts... </i> <button name="pushme" onClick="push_me();return true;"> <dir> <li> Go for Perl! </dir> <font size="+1"><strong> Author: Casey Tweten, 100% Perl Geek </strong> </font> %% #Casey West $_=`perldoc -qjaph`=>s`.+"(.+)".+`$1\n`s=>s`\b([^a])`\u$1`g=>print; %% #Casey West sub q{print};;$_=eval q.q; # Just another Perl Hacker ;;.;s;.+?\b;;s;eval qq;&q; %% #Casey West sub ::(Just{another}Perl{Hacker}){( $,=>$\)=(q q q=>q q q)=>prototype\& ::}@(=split q q\{([^\}]+)\}q=>eval{ eval qq:&\:\::};{(print(@(=>"\n"))} %% #Casey West map{s[[^\@\$]][]go=>chomp,$_=[split/(\@+\$*)/=>$_]=>map{$_?do{s( (\@+)(\$*))(chr((length$1)*10+length$2))ex=>print}:1}@$_}<DATA>,__END__ sub proto(@@@@@@@$$$$@@@@@@@@@@@$$$$$$$@@@@@@@@@@@$$$$$ @@@@@@@@@@@$$$$$$@@@$$@@@@@@@@@$$$$$$$@@@@@@@@@@@ @@@@@@@@@@@$@@@@@@@@@@@$$$$$$@@@@@@@@@@$$$$ @@@@@@@@@@$@@@@@@@@@@@$$$$@@@$$@@@@@@@@ @@@@@@@@@@$@@@@@@@@@@@$$$$@@@@@@@@@@$$$$$$$$ @@@$$@@@@@@@$$@@@@@@@@@$$$$$$$@@@@@@@@@$$$$$$$$$ @@@@@@@@@@$$$$$$$@@@@@@@@@@$@@@@@@@@@@@$$$$@){&proto} %% #Casey West #!/usr/local/bin/perl -w use strict;$|++;$_=q{<}. q{leo%mbwf<?BUBE=fmjix}. q{!`%-0/]0ujmqt~*udp)s}. q{id|qbn-((ojpk>/leo%-}. q{qnpid<leo%zn}=>s{(.)}{ chr((ord $1)-1)}xeg;eval scalar reverse;#IP magic __END__ 160.141.143.153 141.147.145.40 112.165.163.164 73.163.165.142 40.141.156.157 164.150.145.162 173.50.143.141 154.154.145.162 50.60.51.51 40.133.63.135 175.12.160.141 143.153.141.147 145.40.120.145 162.154.73.163 165.142.40.110 141.143.153.145 162.40.173.50 143.141.154.154 145.162.50.60 51.51.40.133 63.135.175.12 160.141.143.153 141.147.145.40 155.141.151.156 73.160.162.151 156.164.40.152 157.151.156.40 47.40.47.54 40.163.160.154 151.164.40.155 47.72.72.47 54.12.152.157 151.156.47.72 72.47.54.112 165.163.164.72 72.141.156.157 164.150.145.162 54.120.145.162 154.72.72.110 141.143.153.145 162.56.42.134 156.42.73.12 %% #Jeff Pinyan <[email protected]> M^q@@;BEGIN{close"stderr"}print+H|R&k,G^w|E,Q&x|c,,,, M&~i|t,,,q^&q|^^q&l],&^q|jm>|,N|d|A&c,v&q~|~,c^H^C,w& M|a,qq<\x11A"\x17\x1b\x09Rh\x0d\x0c\x18\x11x>^<<,,,,, carrier lost
,,;!EOF %% #Joey Mitchell Comeau <[email protected]> perl -e '$_=$\=" perl hacker,";$_&="B";$_|=("B"|"H");$_|="Just another";print;' %% #Lauren Smith <[email protected]> print grep ord $_,map{y/a-zA-Z//d;$x.="+ $_";chr(eval $x) }'J74u43-s2tA1-84n33o45th1er5-12-P3e13-82r48l21H13-a6-76 c40k25er2wx8-y6z13-81'=~m#([^!\n]{3})#g#tr/-0-9//d;print %% #Robin Houston <[email protected]>
The notorious French literary group _Oulipo_ came up with the following scenario: A prisoner has a very limited supply of paper to write on, and so in order to conserve this scarce resource he decides to use only those letters which extend neither above nor below the line: aceimnorsuvwxz
Ian Monk's _a russian con's economic missive_ (http://www.kitsite.com/~robin/ou-x-po/talk/prisoner.html) is an example of writing within this constraint.
Naturally, I'd like to apply this idea to Perl. Because non-alphabetic symbols are so important to us, it was obviously necessary to extend the idea a little. I analyzed my terminal font, and decided that the characters
&+-.:<=>acemnorsuvwxz~
went neither too far up nor too far down. Naturally the results may be a little different for other fonts, but I needed a standard. So I started to program in this restricted Perl.
It's a frustrating little language, but rather beautiful.
A JAPH:
s==x= && s==.er & xac.uc coer= && s==m--+m--+m--+m--=e && s==xac.~o= && s=.+=<<x& evam=ee && eva~ x s=c.=c= && s=x=xz&<<o=e && xm o s=x=x = && s=x=<<xc& <<xo =e&& x~ xc xm xo s=x=xer= && s=x=xr& xu=e && s=x=xer = && s=x=xx & uc xn=e && s=.=xu & <<o=e && x~ o s=x=x ano= && s=x=xu & <<o=e && x~ o s=x=xus= && s=x=xo & uc xz=e && s= == && s=.== && s=.+=reverse uc=e && s=.= r= && s=.+=reverse uc=se &&
warn uc
I wonder whether it would be possible to write a Turing Machine in this restricted language, demonstrating its algorithmic completeness.
.robin.
Notes: http://www.kitsite.com/~robin/ou-x-po/talk/perl-prisoner.html
Analyzing font metrics: http://www.kitsite.com/~robin/ou-x-po/fontm.c http://www.kitsite.com/~robin/ou-x-po/prisoner.pl %% #[email protected] #received an honourable mention 2000 TPJ Obfuscated Perl Contest $\=$/,$^X=~m(((.)..l));$~=q,od,,$_='[email protected] 2000/01/04' ,$;="/$2$~/$1f\141q".(close STDERR).".$2$~";$#=length,print map{@ARGV=-f$_.$;?$_.$;:m;();;m>"(j.{$#})>while<>;$+}@INC %% #"Christensen, David A. (CHC)" <[email protected]> with thanks to #Andy Lester #!/usr/bin/perl undef $/;@t=split//,<DATA>; print map{$_<0?chr(-$_):$t[$_]} qw /-74 32 10 11 5 40 41 44 43 75 80 76 27 48 64 65 26 54 7 1 91 -107 69 58/; __END__ David Christensen Technical Consultant Manitoba Public Library Services
%% #Mark-Jason Dominus http://www.plover.com/
require 5.00553; use re 'eval'; $|=1; $z = qr{(?{local$d=1}) (?:`(?{$d++}) |.(?{$d--}) )+? (?(?{$d})(?!)) }x; $_="``As`SB``Ad``S``BS`BBI``Ae``B`SI`Ed``A?``C``CIi`pI``E?Z``BZZZZZ`KI ```CX`KIZZQZZZQZZZZZQZZZZQZ``BZZ```CX`KX`KXQ``Ee``EeZZZZZQZ```CX`KIZZQ ```CX`KIZZQZZZZQ```CXZ`KIZZQ``Ee```CX`KIZZQ``EdZZZQZ``BZZ```CX`KX`KXQ` `BZ```CX`KIZZ`KXZQ``Ee```CX`KIZZQ``EdZZZQ``BZZZZ`KXQZ``BZZ```CX`KX`KXQ ``B```CXZ`KIZZ`KXQ``Ee``EeZZZZZQ``B``EeZZZ`KXQ``Ee``EdZZZQ``Ee```CX`KI ZZQ``EdZZZQ``Ed``Ee```CX`KX`KI"; s/\n//g;s/Q/`KI``E?/g;s/X/IZZZ/g;s/Z/``Es/g; 1 while s{`I($z) (?{$q=0})|``K($z)($z) (?{$q=1}) |```S($z)($z)($z)(?{$q=2})|```B($z)($z)($z) (?{$q=3}) |```C($z)($z)($z)(?{$q=4})|``A($z)($z) (?{$q=5}) |`i($z) (?{$R++,$q=6})|`p($z)(?{print(chr 120-$R), $R=0, $q=7}) |`E($z) (?{$q=8})|`V($z) (?{$q=9}) } {local $^W; $q<5 ?($1,$2,"``$4$6`$5$6","`$7`$8$9","``$10$12$11")[$q] :$q==5?($bind{$13}=$14,"") :($15,"",$bind{$17},"")[$q-6] }ex; %% Author: Mark-Jason Dominus @P=split//,".URRUU\c8R";@d=split//,"\nrekcah xinU / lreP rehtona tsuJ";sub p{ @p{"r$p","u$p"}=(P,P);pipe"r$p","u$p";++$p;($q*=2)+=$f=!fork;map{$P=$P[$f|ord ($p{$_})&6];$p{$_}=/ ^$P/ix?$P:close$_}keys%p}p;p;p;p;p;map{$p{$_}=~/^[P.]/&& close$_}%p;wait until$?;map{/^r/&&<$_>}%p;$_=$d[$q];sleep rand(2)if/\S/;print
[note: Won 2nd place in the 5th annual obfuscated Perl contest. see http://perl.plover.com/obfuscated/ for more info. ] %% #Yanick Champoux #http://www.iro.umontreal.ca/~champoux/sigs/ print map chr$_[0]-ord$_,@_='200ocT╣ZYT`cV▁cV\╜ge]cV'=~m;(\d+|.);g; %% #Richard Proctor <[email protected]> @{$_}=(@{$_-1},1)for(1..9); map{s/./sprintf"%02d",ord$&/eg}($h,$l) =("0X\cFMWD\cDDF.CD","\cY\"\cEY*\\\cH\\<\cEK\\"); print chr((@{substr($h,$_,1)}.@{substr($l,$_,1)})+32)for(0..23) %% #Richard Proctor <[email protected]> sub x{for(split'',"Abigail!"x3){print chr(shift()+ord)}} x(9,19,10,13,-65,-8,2,78,51,6,-4,11,-65,-25,-7,81,43,-66,-33,-6,2,2,-7,81) %% #Gaal Yahas <[email protected]> perl -le '@Just_another_Perl_hacker=map{/^[^*].*hack/&&s,_, ,g&s,$,\,,&print}%::' %% From [email protected] (Randal Schwartz) 1 Feb 90 22:28:58 GMT @a=split(/(\d)/,"4Hacker,2another3Perl1Just");shift(@a);%a=@a;print "@a{1..4}"; %% From [email protected] (Andrew Vignaux) 22 Aug 90 11:10:18 GMT $s=(localtime(time))[0]; sub n { ($a - $b) * $s; } print grep(s/.*\t//,sort n grep($_=++$i/-50."\t$_",split(/\n*/,<<JAPH))); ,rekcah lreP rehtona tsuJ JAPH %% From [email protected] (Randal Schwartz) 29 Aug 90 19:14:54 GMT print pack("c*",(32..127)[42,85,83,84,0,65,78,79,84,72,69,82,0,48,69,82,76,0,72 ,65,67,75,69,82,12]) %% Date: 6 Feb 90 22:31:17 GMT From: [email protected] (Randal Schwartz) print grep(s/^\d+(.*)/$1 /, sort(split(/ /,"8hacker, 4Perl 1Just 2another"))); %% Date: 5 Feb 90 18:08:59 GMT From: [email protected] (Randal Schwartz) %_=split(/(\D+)/,"7Perl6another8hacker,5Just");print"@_{5..8}"; %% From: merlyn print pack('C25', grep($_ && $_ -= 256, split(/(\d\d\d)/, <<STRANGE))); 330373371372288353366367372360357370288336357370364288360353355363357370300 STRANGE %% Date: 11 Feb 90 20:32:28 GMT From: [email protected] (Randal Schwartz) for (unpack('C25', 'Just another Perl hacker,')) { printf "%03d", $_ + 256; } $_="wHFG NABGURE cREY UNPXRE,";y/a-zA-Z/N-ZA-Mn-za-m/;print; %% Date: 15 Feb 90 23:01:59 GMT From: [email protected] (Randal Schwartz) $_="Just another Perl hacker,";for$i(1..length){print substr($_,$i-1,1);} %% Date: 18 Feb 90 19:05:13 GMT From: [email protected] (Randal Schwartz) print pack('C25', reverse unpack('C25', ',rekcah lreP rehtona tsuJ')); %% Date: 21 Feb 90 18:13:49 GMT From: [email protected] (Randal Schwartz) print reverse split(/\/*/,",rekcah lreP rehtona tsuJ"); %% Date: 21 Feb 90 20:51:25 GMT From: [email protected] (Randal Schwartz) echo Just another Perl hacker,|perl -e 'print$1if($_=<STDIN>)=~/^(.*)/;' %% Date: 23 Feb 90 19:01:21 GMT From: [email protected] (Randal Schwartz)
format STDOUT = @<<< @<<<<<< @<<< @<<<<<, $Just, $another, $Perl, $hacker . for("Just","another","Perl","hacker"){eval"\$$_=\$_;";};write; %% Date: 23 Feb 90 19:04:55 GMT From: [email protected] (Randal Schwartz) $,=' ';print grep(s/^.//, sort "2another","4hacker,","1Just","3Perl"); %% Date: 23 Feb 90 23:23:53 GMT From: [email protected] (Randal Schwartz) @a=split(/X*/," ,JPacehklnorstu");print@a[2,15,13,14,0,4,10,11,14,7,6,12,0,3,6,12,9,0,7,4,5,8,6,1 2,1]; %% Date: 27 Feb 90 17:33:57 GMT From: [email protected] (Randal Schwartz) Subject: Re: more termcap.pl problems & a quick question In-reply-to: [email protected] (Paul E. Maisano) Organization: Stonehenge; netaccess via Intel, Beaverton, Oregon, USA Newsgroups: comp.lang.perl
In article <[email protected]>, pem@frankland-river (Paul E. Maisano) writes: | sub p { | local($str) = @_; | $str =~ s/([\000-\037])/"^".pack("c", ord($1)+0100)/eg; | print $str; | } [well, he said more than that, but that's the important part... :-]
how about handling DEL too?
sub unctrl { local($_) = @_; s/([\000-\037\177])/'^'.pack('c',ord($1)^64)/eg; $_; }
print &unctrl("\000\002\n\r\027ABC\177"),"\n";
results in:
^@^B^J^M^WABC^?
print &unctrl("Just another Perl hacker,"); %% Date: 27 Feb 90 17:48:36 GMT From: [email protected] (Randal Schwartz) for (split(/(.)/,"Just another Perl hacker,")) {print if $_;} %% Date: 28 Feb 90 01:32:25 GMT From: [email protected] (Randal Schwartz) @a=<;echo Just another Perl hacker,>; print join(" ",@a); %% Date: 28 Feb 90 01:51:32 GMT From: [email protected] (Randal Schwartz) mkdir("/tmp/$$",0777); chdir "/tmp/$$"; grep(open(X,">$_"),"1Just","2another","3Perl","4hacker,"); print join(" ",grep(s/^.//,<*>)); chdir ".."; system "rm -rf $$"; %% Date: 28 Feb 90 02:03:37 GMT From: [email protected] (Randal Schwartz) $_ = <<END; s/../pack('C',hex($&))/ge; print; 4a75737420616e6f74686572205065726c206861636b65722c END %% Date: 28 Feb 90 16:09:35 GMT From: [email protected] (Randal Schwartz) $\="hacker,";$,="another ";print"Just ","Perl "; %% Date: 28 Feb 90 22:45:45 GMT From: [email protected] (Tom Neff) @a=split(//,'1111211111131223311361214223121412311341121111222123616111111122'. '21233212615112114212321211121111222123321120');for$r(@a){for(1..$r){vec($s,$i, 1)=$v;$i++;}$v^=1;}print"$s\n"; %% Date: 1 Mar 90 06:27:25 GMT From: [email protected] (J Greely) print reverse(split(/!?/,join(' ',sort split(/ /,"tsuJ rehtona lrep ,rekcah")))); %% Date: 1 Mar 90 17:06:10 GMT From: [email protected] (Randal Schwartz) for('Snobol','Perl'){print"Just another $_ hacker,\n";} %% Date: 5 Mar 90 17:39:29 GMT From: [email protected] (Randal Schwartz) pipe(R,W);if(!fork){exit print W"Just another Perl hacker,";}close(W);print<R>; %% Date: 6 Mar 90 11:07:32 GMT From: [email protected] (Andrew Vignaux) @l = split (/(..)/,'1a7r4J1n0a7e7c1o8n248o1t4u8v4s7.207l27547a7n7g1h'. '0 511e3h7.8i564t3a6P1r7p8c8e6e3c3k7e3e533r7r286r6l4 6 1 8,7l7 3,'); srand; $_=3*int(rand(2))+2; /^$_/; foreach (split(//,&g)) {/^$_/;print &g;} print "\n"; sub g {join('',grep(s/^.//,grep(//,@l)));} %% Larry> for(split(//,'))*))91:+9.*4:1A1+9,1))2*:..)))2*:31.-1)4131)1))2*:3)"')) Larry> {for(ord){$i+=$_&7;grep(vec($s,$i++,1)=1,1..($_>>3)-4);}}print"$s\n"; Larry> And a special version just for Randal: Larry> grep(do{for(ord){$i+=$_%8;grep(vec($s,$i++,1)=1,5..($_>>3||print"$s\n"));}}, Larry> (@x=split(//,"))*))91:+9.*4:1A1+9,1))2*:..)))2*:31.-1)4131)1))2*:3)\7"))); %% Date: 6 Mar 90 18:08:23 GMT From: [email protected] (Randal Schwartz) open(C,"|uncompress");$_=<<EOF;s/../pack('C',hex($&))/ge;print C $_; 1f9d904aeacca103228c9b3774d094910302ca423620d08419b366210b05 EOF %% Date: 6 Mar 90 21:36:52 GMT From: [email protected] (Randal Schwartz) print $_ x (($_ = "just another Perl hacker,") =~ s/j/J/); %% Date: 7 Mar 90 05:58:52 GMT From: [email protected] (Randal Schwartz) $_="kheauroes ,rJttParn lhc e";srand(1); while($a=length){$a=rand($a);print(substr($_,$a,1));substr($_,$a,1)="";} %% Date: 7 Mar 90 18:12:26 GMT From: [email protected] (Randal Schwartz)
open(M,"/usr/games/lib/quiz.k/morse") || die "morse: ($!)"; while(<M>) {next unless /([A-Z]):(.*)/; $m{$2}=$1;} close(M); print grep($_ = ($m{$_} || $_), split(/([^-.])/,<<EOF)); exit 0; .--- ..- ... -/.- -. --- - .... . .-./.--. . .-. .-../.... .- -.-. -.- . .-., EOF %% Date: 26 Mar 90 16:20:37 GMT From: [email protected] (Raymond Chen) $_='x"Not ";"x\"another \";\'x\\"perl \\";x\\"hacker,\\"\'"';s/x/print/g;eval eval eval; %% Date: 10 Mar 90 01:44:00 GMT From: [email protected] (Randal Schwartz) for($i=129600;@x=gmtime($i),(print substr('Just another Perl hacker,',$x[5]*12+$x[4]-840,1)),($i+ =2639520)<66117600;){;} %% Date: 10 Mar 90 01:55:18 GMT From: [email protected] (Randal Schwartz) printf "%c"x 25,74,117,115,116,32,97,110,111,116,104,101,114,32,80,101,114,108,32,104,97,99,107,1 01,114,44; %% Date: 11 Mar 90 01:03:06 GMT From: [email protected] (Randal Schwartz) %X=split(/(\d)/,'another2Perl4hacker,8Just1');sub X {$X{$a}<$X{$b}?-1:1;} print join(" ",sort X k eys X); %% Date: 11 Mar 90 16:56:40 GMT From: [email protected] (Randal Schwartz) print join('',grep(s/.*"(.)".*/$1/,split(/\n/,<<))); Gimme a "J"! Gimme a "u"! Gimme an "s"! Gimme a "t"! Gimme a " "! :-) Gimme an "a"! Gimme an "n"! Gimme an "o"! Gimme a "t"! Gimme an "h"! Gimme an "e"! Gimme an "r"! Gimme a " "! :-) Gimme a "P"! Gimme an "e"! Gimme an "r"! Gimme an "l"! Gimme a " "! :-) Gimme an "h"! Gimme an "a"! Gimme a "c"! Gimme a "k"! Gimme an "e"! Gimme an "r"! Gimme a ","! :-) What's that spell??
%% Date: 13 Mar 90 20:00:26 GMT From: [email protected] (Randal Schwartz) print +(split(//,'Just anoherPlck,'))[0..7,3,8..10,4,11,9,10,12,4,8,5,13,14,9,10,15]; %% Date: 20 Mar 90 01:21:37 GMT From: [email protected] (Randal Schwartz) $_=',Pr0e=kRcza0hb 5lOr+e"PE :rBe}hRtho]nhaj nt.s[u=J@';s/../unshift(a,$&)/eg;chop(@a);print@a; %% Date: 17 Mar 90 18:30:39 GMT From: [email protected] (Randal Schwartz)
@ARGV=split(//,'Just another Perl hacker,');push(@x,'')while@x<@ARGV; for$x($[..$#x){grep(*y=*_,$x[$x]);$y=shift;}print@x;
@ARGV=split(//,'Just another Perl hacker,');push(@x,'')while@x<@ARGV; for$y(@x){$y=shift;}print@x;
%% Date: 17 Mar 90 22:34:02 GMT From: [email protected] (Randal Schwartz) @X=split(//,'Just another Perl hacker,');*Y=*X;print @Y; %% Date: 20 Mar 90 01:21:37 GMT From: [email protected] (Randal Schwartz) $_=',Pr0e=kRcza0hb 5lOr+e"PE :rBe}hRtho]nhaj nt.s[u=J@';s/../unshift(a,$&)/eg;chop(@a);print@a; %% Date: 20 Mar 90 01:53:40 GMT From: [email protected] (Randal Schwartz) print "Just another Perl hacker," x "1no time to write a cute signature"; %% Date: 20 Mar 90 20:35:16 GMT From: [email protected] (Randal Schwartz) $_='5O1v3v5y9)1b7u2q4x1i0e3u2"3S9n5w7s6&7o7h8k1l6k3u3/';s/(.)(.)/pack('C',ord($2)-$1)/eg;print; %% Date: 20 Mar 90 23:33:06 GMT From: [email protected] (Randal Schwartz) eval <<EOF; print "Just another Perl hacker," EOF %% Date: 21 Mar 90 16:38:55 GMT From: [email protected] (Randal Schwartz) $_="7072696e7420274a75737420616e6f74686572205065726c206861636b65722c27"; s/../pack('C',hex($&))/eg; eval; %% Date: 23 Mar 90 04:37:57 GMT From: [email protected] (Raymond Chen) $_="krJhruaesrltre c a cnp,ohet";$_.=$1,print$2while s/(..)(.)//; %% Date: 24 Mar 90 22:36:53 GMT From: [email protected] (Randal Schwartz) @a=split(//,",rkeacrl hher PeJust anot");print splice(@a,@a*2/3,@a*2/3+1)while@a; %% Date: 27 Mar 90 00:25:41 GMT From: [email protected] (Randal Schwartz) $_=q(q-q:!print "Just another Perl hacker," :-) ;-7 while$_=eval %% Date: 27 Mar 90 00:31:26 GMT From: [email protected] (Randal Schwartz) for(1..32){grep((print "${_}Just another Perl hacker,$_\r"),'-','\\','|','/');} %% Date: 27 Mar 90 16:16:30 GMT From: [email protected] (Randal Schwartz) @p=split(//,",rekcah lreP rehtona tsuJ");p:print pop(p);goto p if @p; %% Date: 27 Mar 90 16:36:46 GMT From: [email protected] (Randal Schwartz) $|=1;$_=<<'-- ';s#..#printf"%c",(fork?wait&&$?/256:exit hex($&))#eg; 4a75737420616e6f74686572205065726c206861636b65722c %% Date: 28 Mar 90 16:12:34 GMT From: [email protected] (Randal Schwartz) open(STDERR,">&STDOUT");warn "Just another Perl hacker,\n" %% Date: 28 Mar 90 18:06:57 GMT From: [email protected] (Randal Schwartz) $_ = "Just a sed user,";s/a/another/;s/sed/Perl/;s/user/hacker/;print %% Date: 28 Mar 90 19:27:25 GMT From: [email protected] (Randal Schwartz) $_="reJ alounPt srhaetchr, ek";s/(..)(.)(..)/(print$2),$3.$1/eg;s/(.)(.)(.)/(print$2),$3.$1/eg;pr int %% Date: 28 Mar 90 21:35:44 GMT From: [email protected] (Randal Schwartz) ($_="Just another Perl hacker,"); 0 while s#.# do {print $&;} #e,s/^1//; %% Date: 30 Mar 90 19:18:27 GMT From: [email protected] (Randal Schwartz) $_=<<EOF;for$c(97..121){$x=sprintf("%c",$c);printf"%c",32+eval"y/$x/ /";} ldhnxdqflccjgixntpttudphiwljotwvvqsoiifujkxcfxsjtsxahsgobxhbkwocoglgkj vjiibdlqcjtgifhhvbpjqswfuxtjqudgcvsfdhufnsfxgjsvwxjjckgxpogktbkdgxpxkt sillcoidtqkqcxnsoptdhgqhnjhkolojcgbxcipiniokdpdnhvuvwondpqgcudjiucgdli llilclpsniuogqntvvbuwpdhdgvnbfaiplndubaipapwisjxocfuvsasjifdbcdtbtojfd phpxidhbdavxpxpbidcfbaxwwvddbpscdccatxbpckhavtldtvlvsgbpvlqxolowbvcloa jlfltiqwqqjafxlfpcgiqbxsvpgpvgsiblwgllvicfcifkulujvspoxklihaxkddnohidk gfsffjtugalibsginvhbkikuawfpcgppvvdfpkocjsluvcqnskvtjuppkfglpbcbsvxqxi opxwkovjhvqwojkfckqysxqsibbanxivcitctldvxilcvupxxldhnvsthocjcolhwqtwti nitspguakklhgkjwvlfwddsvuuwixhqvjpgbjpjtbojanxwutxsvuvicdgnsikkqqbdthu lwcasbqokhpwxskbqpcdlngqwnwqtbxpugafvnkhhbhscgusitstucvlubgilfaaulphlv ohpogqwqoauqtbvboupwjpfhggvkkbsbcxiolqkppdiqltjnxnsnstdsosfupcyjxwgpqg ahuscvvhohjxipcqwjxdwdusxwgyydatihdlbigusjqlpocdfpijvfhwuuggbtginttlxi wcqklviatnjgbnslbhxbgxqwvqyfvxnxiulktwigvbbodwfqjkduopfyugjqqfhdxgqbjs dupicidbqflkowtbnjqiwpqxpynibbiqhbagsuiqkpbfqnjyooswwchbqkpxqbwgxhkwoq htokfhhjdsavpkdldlkndkcwcghybhpcsocdwboqtnilvkwqvtxdwadbjqihjfdtgksblk aaddbwhalcdgtgblbhdsvnxcuqqbfldhkjfghdpvtnxsnoipfcvslxicolwfxbjbcnbwgo vlvhfcqcjonddjttdcsgxxiulvljsjsiuhhfwpkocngspoxdjsykwpofgplkncopvcwlgq xscfxpfiidtghbxspjcbjuuuhnvqwviuciobkapaxbisdnixjsakqsahlfihtlqxsfjgbo xaptdwcvlgohpvggoujoogjcobjwwugkfdbklhghuuthcbksdqcvcgatokqcdichpiwbjc buxyhwhnuxkiqwivdbgpvjqfuditkplfcsjjkflohigswtdjtahfclqkxouvabxfotbuhf tbfqlqkibvagngkuvwnpjcqhpowfqhuaoqccdlupdwosvupxqbvqpkihvftwfbsodsyjgp hhbxhwfhkiadlwfwxunbhuqppbhjguctjldfoqtgkllcllxtxxklxwdtcdhklxusxjcixg EOF %% Date: 2 Apr 90 18:45:15 GMT From: [email protected] (Randal Schwartz) @A=split(/\n/,<<'-- ');$A[9-$b-($b>5)]=~s/\*/vec($_,8*length($`)+$b-1,1)=1/eg while++$b<9;print; **** ******* **** ****** ************ *********** ......................... *** * * * * * * ** * * * * * * * *** * * * * * * * ** * * ** * ** * * * * **** -- %% Date: 3 Apr 90 22:44:56 GMT From: [email protected] (Randal Schwartz) @ARGV=split(/\S\n?/,<<EOF);$a+=length(shift),vec($_,$a,1)=1while@ARGV;print; :-) :-) :-) :-) :-) :-) :-) :-) :-) :-) :-) :-) :-) :-) :-) :-) :-) :-) :-) :-) :-) :-) :-) :-) :-) :-) :-) :-) :-) :-) :-) :-) :-) :-) :-) :-) :-) :-) :-) :-) :-) :-) :-) :-) :-) :-) :-) :-) :-) :-) :-) :-) :-) :-) :-) :-) :-) :-) :-) :-) :-) :-) :-) :-) :-) :-) :-) :-) :-) :-) :-) :-) :-) :-) :-) :-) :-) :-) :-) :-) :-) :-) :-) :-) :-) :-) :-) :-) :-) EOF -- %% Date: 3 Apr 90 22:40:40 GMT From: [email protected] (Raymond Chen) $x=split(/( )/,'Not another perl hacker,');$_=q$x$x$x;s$x$print shift(@_)$eg; %% Date: 4 Apr 90 03:02:23 GMT From: [email protected] (Randal Schwartz) @_=("Just another Perl hacker," =~ /(.*) (.*) (.*) (.*)/);print"@_"; %% Date: 10 Apr 90 02:18:38 GMT From: [email protected] (Tom Neff) system qq|perl -e 'system qq!echo Just another ANSI Perl hacker,!'| %% Date: 11 Apr 90 08:46:10 GMT From: [email protected] (Randal Schwartz) eval q(eval q-eval q:print"Just another Perl hacker," :-) %% Date: 16 Apr 90 15:58:21 GMT From: [email protected] (Randal Schwartz) $_='987;s/^(\d+)/$1-1/e;$1?eval:print"Just another Perl hacker,"';eval %% Date: 17 Apr 90 00:20:39 GMT From: [email protected] (Randal Schwartz) @L = split(/ /, <<EOL); eval '$'.pop(@L).'='.@L while @L; zero one two three four five six seven eight nine EOL for (split(/\s+/,<<"EOF")) { printf "%c",$_; } $seven$four $one$one$seven $one$one$five $one$one$six $three$two $nine$seven $one$one$zero $one$one$one $one$one$six $one$zero$four $one$zero$one $one$one$four $three$two $eight$zero $one$zero$one $one$one$four $one$zero$eight $three$two $one$zero$four $nine$seven $nine$nine $one$zero$seven $one$zero$one $one$one$four $four$four EOF %% Date: 18 Apr 90 13:47:12 GMT From: [email protected] (Randal Schwartz) $_=",rekcah lreP rehtona tsuJ";s/.$/eval 'print $&',""/e while length %% Date: 19 Apr 90 23:21:03 GMT From: [email protected] (Randal Schwartz) print grep($_=sprintf("%c",exp($_)),split(/\s+/,<<'-- ')); 4.311 4.766 4.749 4.758 3.481 4.580 4.705 4.714 4.758 4.649 4.620 4.741 3.481 4.388 4.620 4.741 4.687 3.481 4.649 4.580 4.600 4.677 4.620 4.741 3.795 %% Date: 27 Apr 90 14:55:59 GMT From: [email protected] (Randal Schwartz) $_ = "cker,rl haer PeanothJust "; s/(.{5})$/(print$1),""/e while length %% Date: 27 Apr 90 19:12:09 GMT From: [email protected] (Randal Schwartz) $_ = <<EOF; s/(\d\d)(\d\d)\s*/substr(($!=$1,"$!"),$2,1)/eg; print; J0204020301020103042001060101010202060107010801031300010701080210 0103020604200205150401070108, EOF %% Date: 27 Apr 90 21:02:12 GMT From: [email protected] (Randal Schwartz) $_ = <<EOF; s#[-+]\d+#pack('C',$c+=$&)#eg; print; +74+43-2+1-84+65+13+1+5-12-3+13-82+48+21+13-6-76+72-7+2+8-6+13-70 EOF -- %% Date: 30 Apr 90 21:03:34 GMT From: [email protected] (Randal Schwartz) $_="Just_another_Perl_hacker,";open(_,">$_");print<$_*>;unlink; %% Date: 2 May 90 16:44:45 GMT From: [email protected] (Randal Schwartz) $_ = "Jvtu bopuifs Pfsm ibdlfs,"; y/a-z/za-y/; print %% Date: 6 Apr 90 17:09:14 GMT From: [email protected] (Randal Schwartz) sub _{$b-$a;}print((split(//,",rekcah lreP rehtona tsuJ"))[sort _ 0..24]) %% Date: 18 Apr 90 23:02:31 GMT From: [email protected] (Randal Schwartz) $_='vec(1,1,1); print substr($_ ^ "<\020\020\134\021M_CEA^RP\042\014\034\030\000\033\024\001\030\ 021\000\004",0,25)'; eval %% Date: 18 Apr 90 23:02:31 GMT From: [email protected] (Randal Schwartz) $_='vec(1,1,1); print substr($_ ^ "<\020\020\134\021M_CEA^RP\042\014\034\030\000\033\024\001\030\0 21\000\004",0,25)'; eval %% Date: 19 Apr 90 17:18:27 GMT From: [email protected] (Randal Schwartz) print ('Just ','anoth','er Pe','rl ha','cker,')[0..4] %% Date: 2 May 90 16:44:45 GMT From: [email protected] (Randal Schwartz) $_ = "Jvtu bopuifs Pfsm ibdlfs,"; y/a-z/za-y/; print %% Date: 15 May 90 16:02:24 GMT From: [email protected] (Randal Schwartz) open(P,"|perl");print P"format=\nJust another Perl hacker,\n.\nwrite" %% Date: 22 May 90 21:41:18 GMT From: [email protected] (Felix Lee) @a=split(//,$]);@b=split(//,"k ple th\nhroeaarcn.");$k=$#a=$#b;@a=sort grep($_.=$k++,@a);print@b[substr(pop(@a),1,2)-$#b]while(@a); %% Date: 25 May 90 15:29:25 GMT From: [email protected] (Randal Schwartz) $_=pack("c25",65..90);y/A-Y/Just another Perl hacker,/;print %% Date: 26 May 90 00:00:37 GMT From: [email protected] (Randal Schwartz) sub isplit { # &isplit(word,string) => array local($word,$_) = @_; local(@ind,@result,$start,$end); @ind = (0); s#$word#push(ind,length($`),length($`.$&)),$&#ieg; push(ind,length); # @ind now has pairs of indicies (0-origin) into $_ # that bound the non-$word items; convert into result: while (@ind) { $start = shift(ind); $end = shift(ind); push(result,substr($_,$start+$[,$end-$start)); } @result; } print &isplit("z","JzuZsztZ zaZnzoZtzhZezrZ zPZezrZlz ZhzaZczkZezrZ,"); %% Date: 5 Jun 90 19:07:58 GMT From: [email protected] (Randal Schwartz) $,=" "; print +("hacker,","Just","Perl","another")[1,3,2,0]; %% Date: 14 Jun 90 06:38:52 GMT From: [email protected] (Randal Schwartz) open(o,"|cat");print o "Just another Perl hacker," %% Date: 15 Jun 90 01:37:14 GMT From: [email protected] (Randal Schwartz) print `perl -e 'print STDERR "Just another Perl hacker,"' 2>&1` %% Date: 15 Jun 90 16:15:31 GMT From: [email protected] (Randal Schwartz) $_ = <<'-- '; s/../printf "%c",hex($&)/ge; 4a75737420616e6f74686572205065726c206861636b65722c -- %% Date: 15 Jun 90 22:06:24 GMT From: [email protected] (Randal Schwartz) printf "%s %s %s %s%c", 'Just', 'another', 'Perl', 'hacker', 44 %% Date: 16 Jun 90 19:22:20 GMT From: [email protected] (Randal Schwartz) print <;echo Just another perl hacker,> %% Date: 18 Jun 90 07:49:28 GMT From: [email protected] (Randal Schwartz) $_ = "Just another Perl hacker,"; { redo if s/./(print $&),""/e; } %% Date: 18 Jun 90 15:53:11 GMT From: [email protected] (Randal Schwartz) print "Just another Perl hacker," if "you can't think of anything better..." %% Date: 20 Jun 90 17:51:58 GMT From: [email protected] (Randal Schwartz) $_ = <<'-- '; s/../pack("c",hex($&))/eg; eval; 7072696e7420224a75737420616e6f74686572205065726c206861636b65722c22 -- %% Date: 25 Jun 90 20:58:27 GMT From: [email protected] (Randal Schwartz) %_=split(/(\D+)/,"4Perl1Just8hacker,2another");print"@_{sort(keys(_))}" %% Date: 26 Jun 90 18:02:43 GMT From: [email protected] (Bill Mann) $_="another Just hacker $]".`ps c$$`;@_=split;print"@_[1,0,$#_,11,13,2],\n"; %% Date: 27 Jun 90 00:20:08 GMT From: [email protected] (Randal Schwartz) %_=@_=("Perl","hacker,");print"@_[!print 'Just '] @_{(keys _)[!print 'another ']}" %% %% Date: 28 Jun 90 17:57:59 GMT From: [email protected] (Randal Schwartz) print "$ARGV[push(@ARGV,'Just another Perl hacker,')]" %% Date: 30 Jun 90 21:11:02 GMT From: [email protected] (Randal Schwartz) for("hacker","Perl","another","Just"){substr($x,0,0)="$_ ";}substr($x,-1,1)=",";print$x %% Date: 1 Jul 90 18:24:21 GMT From: [email protected] (Randal Schwartz) print grep($_=pack("c",hex($_)),unpack("A2"x 25,"4a75737420616e6f74686572205065726c206861636b65722 c")) %% Date: 1 Jul 90 22:55:10 GMT From: [email protected] (Randal Schwartz) $x=25;print substr(',rekcah lreP rehtona tsuJ',$x,1) while --$x >= 0 %% Date: 3 Jul 90 00:19:58 GMT From: [email protected] (Raymond Chen) $_="-|";open _||print"creaJklrnue osrhptt,aeh ";while(<_>){$}=5;s/(.{$}})(.)/(print$2),$1/eg whil e--$};print;} %% Date: 5 Jul 90 17:18:01 GMT From: [email protected] (Randal Schwartz) $_="cker,rl haer PeanothJust ";1 while s/(.{5})(.{5})?/$_{$2}=$1,$2/e;print while $_=$_{$_}; %%

|