给 perl hacker 们看的 选择自 eternalee 的 Blog
时间:2005-03-13 来源:huzi211
究竟有多少种打印出 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$/;$_=;y/ODA / /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("seek40D
ATA,0, 0;");foreach(1..3)
{;}my @camel1hump;my$camel;
my$Camel ;while( ){$_=sprintf("%-6
9s",$_);my@dromedary 1=split(//);if(defined($
_=)){@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(//,"40..m`{/J47134}L^7FX"))[$camel1h
ump];}$camel.=" ";}@camel1hump=split(/ /,$camel);foreach(@
camel1hump){chomp;$Camel=$_;y/LJF7173175`47/616263
06465666770/;y/12345678/JL7F17517347`/;$_=reverse;
print"$_40$Camel ";}foreach(@camel1hump){chomp;$Camel=$_;y
/LJF7173175`47/12345678/;y/12345678/JL7F175173 47`/;
$_=reverse;print"40$_$Camel ";}';;s/s*//g;;eval; eval
("seek40DATA,0,0;");undef$/;$_=;s/s*//g;( );;s
;^.*_;;;map{eval"print"$_"";}/.{4}/g; __DATA__ 124
1 5014540165163145401571 46401 41
40143141 1551451 54401 51155 141
147145 40151156 40141 16316 3
157143 15114116 41511 57156
40167 1511641 5040 1201
45162 1544015 1163 04014
1401 641621 41144 145
15514 1162 1534 0157
146 04011 747 1221
4515 11541 54171 40
46 01210116 316
315 714315 114
116 4145163 54
40 11115614 356
40 12516314514 440
1671 511641 50 40160
145162 155151
163163 1511
5715656
%%
#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).*
;$_
{ $-
++
/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^?$|^(+?)1+$0'
%%
#Abigail
perl -wle 'print "Prime" if ("m" x shift) !~ m m^m?$|^(mm+?)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<-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->();
%%
#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 ", "ther "); # YYYYMMDD
%%
#Abigail
perl -wle '$, = " "; sub AUTOLOAD {($AUTOLOAD =~ /::(.*)/) [0];}
print+Just (), another (), Perl (), Hacker ();'
%%
#Abigail
perl -we '$@="145143150157404211216516316440141156157164".
"1501451624012014516215440110141143153145162".
"424076405714414516657164164171";`$@`'
%%
#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 "/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
//=>"IGrACVGQx02GJCWVhPx02PLx02jNMP"));print+(map{$_^q^"^}@[)," "
%%
#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 ")}'
%%
#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 }}}}}}}}}' |
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{blessmy$J,J}
sub A::FETCH{Another}$_.='{tie my($x),$';sub A::TIESCALAR{blessmy$A,A}
sub P::FETCH{Perl }$_.='_;$x}qw/J A P';sub P::TIESCALAR{blessmy$P,P}
sub H::FETCH{Hacker }$_.=' H/]} "';eval;sub H::TIESCALAR{blessmy$H,H}
%%
#Abigail
package Z;use overload'""'=>sub{$b++?Hacker:Another};
sub TIESCALAR{blessmy$y=>Z}sub FETCH{$a++?Perl:Just}
$,=$";my$x=tie+my$y=>Z;print$y,$x,$y,$x," ";#Abigail
%%
#Abigail
sub A::TIESCALAR{blessmy$x=>A};package B;@q[0..3]=qw/Hacker Perl
Another Just/;use overload'""'=>sub{pop @q};sub A::FETCH{blessmy
$y=>B}; tie my $shoe => qq 'A';print "$shoe $shoe $shoe $shoe ";
%%
#Abigail
sub A::TIESCALAR{blessmy$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 ";
%%
#Abigail
tie $" => A; $, = " "; $ = " "; @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." ");
%%
#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
$_ = "x3Cx3Cx45x4Fx54"; s/<$_-$*]if$_[$">$|..@_-$|){for($|..@_-$:){@_[$_-$|,$_]=@_[$_=>$_-$*]if$_[$_][
$篯<$_[$_-$*][$芣;print+map{$_->[$|]}@_;select$?$?$?0.1}}print$/
%%
#Abigail
@_=map{[$!++=>$_^$/]}split$?>"@x7Fy~*kde~box*Zoxf*Bkiaox";$=" ";
$|=++$*;do{($#=>$=)=(rand@_=>rand@_);@_[$#,$=]=@_[$=,$#]}for($*..@_);
for$:($|..@_-$|){for($|..@_-$:){@_[$_-$|,$_]=@_[$_=>$_-$*]if$_[$_][$?]<$_[$_-$*][$芣;print+map{$_->[$|]}@_;select$?$?$?"$[.$|"}}print$/
%%
#Abigail
BEGIN {print "Just " }
CHECK {print "another "}
INIT {print "Perl " }
END {print "Hacker "}
%%
#Abigail
perl -wle'print"牉圪莘釉偎纶莪纶陷环撐纶"^"x80"x24'
%%
#Abigail
my $qr = qr/^.+?(;).+?1|;Just another Perl Hacker;|;.+$/;
$qr =~ s/$qr//g;
print $qr, " ";
%%
#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, " if $language eq 'perl';
%%
#John Porter <[email protected]>
eval { 62->lZRopcwjoXyup_yuGpXcxbyu() };
$@ =~ s/"(.*?)"/"ss"/;
print((split//,$@)[map{ord($_)-62}split//,$1],", ");
%%
#Casey West
my $html;$html.=$_ while;$html=~s/[^ ] <([^/])/
' <'.chr(ord($1)-32)/ges;$html=~s/ //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" "
,join('',($html=~m/(?:<([^/])|( ))/g)),'';# Formatting
__END__
Type some HTML into a Variable.
and you set it's value. Amazing!
<object code="srccode" />
Quote this text:Perl. Live it, love it, learn it.
Perl. Live it, love it, learn it.