Op donderdag 06 december 2001 19:04 schreef KrunK het volgende:
Geen idee, werk niet met Perl.
Perl is een uit de klauwen gelopen scripttaal. Het is gemaakt door iemand die grote hoeveelheden usenetberichten wilde filteren, en dat met grep en awk niet lukte. Hij maakte toen een scripttaal die dat wel kon, en van daaruit is Per]l gegroeid. En geëvolueerd. En gegroeid. En geëvolueerd. En nog verder gegroeid. En het groeit nog steeds.
De filosofie achter Perl is om alles toe te staan. Het klaagt nooit, geeft geen waarschuwingen, en geeft alleen errors als het daadwerkelijk crasht.
Je kent vast wel dat lijstje van hoe je je met verschillende programmeertalen in je voet kunt schieten? Met Perl kan je een nuke op je voet gooien, en daarna loop je nog steeds door
Perl is er trouwens wel berucht om dat het te makkelijk is om "write only code" te maken. Code die je in elkaar flanst, die werkt, maar die je daarna niet meer kunt lezen...
Dit bijvoorbeeld is een heerlijk stukje Perl dat dienst doet als signature:
code:
1
2
3
4
| @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 |
Dat stukkie kreeg trouwens de tweede prijs in een "obfuscated Perl contest"
[edit]
oooOOooOoOOOOOoooo... Nog een mooier stukkie Perl gevonden:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
| /;{}def/#{def}def/$_={/Times-Bold exch selectfont}#/_{rmoveto}#/"{dup}#/*/!/$
;/q{exch}#/x ; {/J q #}#/.{/T q #}#{stringwidth}#{}#{}# 14 string dup dup dup
260 40 moveto 90 rotate ; %/}};$0='"\e[7m \e[0m"';@ARGV=split//,reverse
q(ThePerl). q(Journal) x 220 ; q ; 0 T putinterval exch 7 J putinterval ;
; $_= q /m$ pop T($*!$"=!$ " )pop " * true% ? $ " $!" " !! !! % !" !" !
! charpath {!"""}pop $ pop{""!}pop ! neg{!#}pop 220 ! neg _{!!}pop J false %T
charpath clip " pop 0 " moveto 6{!!}pop $_= 105{!!}pop {$ ! $ " ! #! ##}
pop{dup dup $ ! " pop pop q{"}pop 22{dup show}repeat {"}pop q 22 mul{$ "} pop
neg{!#! $ "}pop ! 8 .65 mul{$ # # $}pop ! neg{"}pop _ pop{"}pop } repeat pop
" { $ " ! ! ! $ " ! !" "#" #"!"""""! #" " # "m/;@ARGV=(@ARGV[-14..-1])x50;q}
0 "%};s/m[ou]|[-\dA-ln-z.\n_{}]|\$_=//gx;s/(.)(?{$*=''})/('$*.='.(++$#
%2?'':"$0;").'pop;')x(ord($1)-31).'$*'/gee;s/((.(\e\\[.m)*|.){77})/$1\n/g;print
; sub showpage {} |
Is ook geldig PostSrcript, naar het schijnt... Eens kijken wat het print
Het is alleen een echte hetze als het uit Hetzerath komt, anders is het gewoon sprankelende ophef.