怠azine、焊り、うぬがれは、プログラマヌの3぀の䞻な矎埳です。 お誕生日おめでずう、ラリヌりォヌル

「私は時々Perl`eに倢があるず思う」

-ラリヌりォヌル



  1. 定矩䞊、Larryは垞にPerlの動䜜に぀いお正しいです。 これは、圌が基本的な機胜に察する最終的な拒吊暩を持っおいるこずを意味したす。
  2. ラリヌは、ルヌル1を䜿甚したかどうかに関係なく、しばらくしおから問題に぀いお考えを倉えるこずができたす。
わかった ラリヌは間違っおいおも垞に正しいです。







Larryのコンパクトな䌝蚘は次のようになりたす ギヌクコヌド GC / CS / E / H / IT / L / M / MU / PA / P / S / SS / TW / O d+++> + sa + > ++> +++ $ C ++++ $ UBAHS * ++++ $ P +++++-$ LE W +> ++ N +++ @ K +++> ++++++ @ w $O M-> + V-PS +-PE++Y + PGP-> + t +5 X R> * tv @ b ++> +++ DI +++ D G-e ++> +++ @ h ----r +++ y ++++ 埩号化 



遺䌝牧垫のラリヌは、子䟛の頃に教䌚の牧垫になるこずを倢芋おいたした。 しかし、私はITに行く必芁がありたした。 孊生ずしお、圌は倧孊のコンピュヌタヌセンタヌで3幎間働いおいたした。 倧孊の埌、圌の劻ず䞀緒に、圌らは聖曞翻蚳者ずしお働き、蚀語孊を勉匷したした。アフリカのどこかで、自分の蚀語で曞かれた蚀語のない郚族が芋぀かるこずを望み、圌らはその蚀語のために曞かれた蚀語を開発し、先䜏民に才胜を䞎えたした。 ネむティブの圹割では、数幎埌、プログラマがそうでした。



お金のために、LarryはUnisys、NASAJPL、およびO'Reillyで働くこずができたした。



怠、焊り、自尊心のため、ラリヌはrn Usenetの人気クラむアントずパッチナヌティリティUNIX甚を曞きたした。 生涯寛倧な独裁者になるために、圌はPerlを曞きたした。



ラリヌは、マむダヌズブリッグスの類型 INFP を信じおおり、たた、も぀れたCで2回䞖界チャンピオンを獲埗しおいたす。













Perl



「Perlの孊習のほずんどは、Larryこの蚀語の䜜者の考え方を孊習するこずです。 したがっお、Larryず同じように考えるずすぐに、それぞれの堎合にPerlが䜕をすべきかを知るこずができたす。 しかし、あなたが勉匷しおいる間、時々ドキュメントを芋るべきです。」


「それを行うには耇数の方法がありたす」が Perlのモットヌです。 この原則は、このプログラミング蚀語を䜜成するずきに最初から意図されおいたした。 この考え方に埓っお、蚀語構文は同じアルゎリズムを蚘述する倚くの可胜性をプログラマに提䟛し、この特定のケヌスで最も䟿利で効果的であるず思われるものを遞択できるようにしたす。 䞀方で、これによりコヌドの蚘述が簡単になりたす。倚くの方法のうちの1぀の方法を知っおいるだけでよく、他方では、誰かのコヌドの読み取りが耇雑になりたす。 これを行うには、発生する可胜性のあるすべおの方法を知る必芁がありたす。



Perl 6ロゎは、楜しい蝶を遞びたした。 2015幎10月に開催された䌚議でWallが半分冗談を蚀っお説明したように、これは蚀語を7歳の女の子にずっお魅力的なものにするために特に行われたした。



ラリヌからの小さな真珠



「千マむルの旅は第2ステップに続きたす。」



「本物のプログラマは、任意の蚀語でアセンブラコヌドを䜜成できたす。」



「珟圚、䞻な優先事項は、誀っお新機胜ず間違われる可胜性があるバグを修正するこずです。」Perl 6.0.0に぀いお



「メタメタ、メタメタメタの目暙がありたす。 もちろん、これは人生を楜しみたす。 若いずき、人生を楜しむずいうこずは「人生を楜しむ」ずいうこずです。 私のように少し幎をずるず、他の人が人生を楜しむのを手䌝うこずができたす。 たあ、バランスがありたす。」



「真の偉倧さは、あなたが他人に䞎える自由の量で枬定され、あなたが望むこずをせざるを埗ない人の数では枬定されたせん。」



「私たちは皆、劥協の必芁性に同意しおいたす。 必芁なずきに劥協に同意するこずはできたせん。」



囜際難読化CコヌドコンテストIOCCC



Cでプログラムしたい堎合は、Cでプログラムしおください。これは玠晎らしい蚀語です。 たたに䜿っお......


「囜際Cコヌド難読化コンテスト」は、参加者のタスクがCで最も耇雑なコヌドを曞くこずであるプログラミングコンテストです。

ラリヌは2回優勝したした。



1986
#define _c(C)_ (C)&('|'+3):c_()(C)>>('\n'-3) __; /**/ #define C char* #define keyboard ",,B3-u;.(&*5., /(b*(1\036!a%\031m,,,,,\r\n" #define main(o,oo)oo(o){ #define _ ;case C #define c_(cc)c cc= #define C_(sand)_O(sand)witch o=keyboard; #define __ ;break; C ccc( cc) C cc; { C cccc= cc;int #ifndef lint #define keyboard "dijs QH.soav Vdtnsaoh DmfpaksoQz;kkt oa, -dijs" #endif c; main(;c_(=(*cc);*cc++)c,for); #define _O(s)s main(0xb+(c>>5),C_(s)) _'\v' :__ _'\f': main(c,C_(s)); _c(8098)_c(6055)_c(14779)_c(10682) #define O_(O)_O(O)stem(ccc( _c(15276)_c(11196)_c(15150) #define _C ;return _c(11070)_c(15663)_c(11583) } __ default :c_(+)o[c&__LINE__-007]; main(c_(-)'-'-1,C_(s))_ 0214 :_ 0216 :c_(+)025 _ 0207 :c_(-)4 _ 0233 :c_(+)' '-1; }}c_(&)'z'+5; }_C cccc; }main(,cc) C #define O write(1, c="O"; O_(sy) keyboard)); main(;;,for); read(0, c,1);* c_(&)'~'+1 ;O ccc( c), '\0'); main(*c, C_(s));_ 4 :O_(sy)";kkt -oa, dijszdijs QQ"))_C _ 13 :O o+' ', 3 ) #undef main __ _ 127:O"\b \b",3)__ default :O c,1) __}}}main(){ cc(); # The grand prize in most well-rounded in confusion Larry Wall System Development Corporation Santa Monica California US of A ## Judges' comments: The original version did not have a ';' character in the first line. This caused a number of System VC pre-preprocessors to gripe about a syntax error. This program is a masterpiece of obfuscation and humor. Larry Wall (the hacker who gave us rn and patch) asks you to compile and consider the warning message generated by the C compiler. Then execute the program and type charters into its standard input. You will see why the compiler documents the program. Copyright (c) 1986, Landon Curt Noll & Larry Bassel. All Rights Reserved. Permission for personal, educational or non-profit use is granted provided this this copyright and notice are included in its entirety and remains unaltered. All other uses must receive prior permission in writing from both Landon Curt Noll and Larry Bassel.
      
      





}


1987
 #define iv 4 #define v ;(void #define XI(xi)int xi[iv*'V']; #define L(c,l,i)c(){d(l);m(i);} #include <stdio.h> int*cc,c,i,ix='\t',exit(),X='\n'*'\d';XI(VI)XI(xi)extern(*vi[])(),(* signal())();char*V,cm,D['x'],M='\n',I,*gets();L(MV,V,(c+='d',ix))m(x){v) signal(X/'I',vi[x]);}d(x)char*x;{v)write(i,x,i);}L(MC,V,M+I)xv(){c>=i?m( c/M/M+M):(d(&M),m(cm));}L(mi,V+cm,M)L(md,V,M)MM(){c=c*M%X;V-=cm;m(ix);} LXX(){gets(D)||(vi[iv])();c=atoi(D);while(c>=X){c-=X;d("m");}V="ivxlcdm" +iv;m(ix);}LV(){c-=c;while((i=cc[*D=getchar()])>-I)i?(c?(c<i&&l(-cc, "%d"),l(i,"+%d")):l(i,"(%d")):(c&&l(M,")"),l(*D,"%c")),c=i;c&&l(X,")"),l (-i,"%c");m(iv-!(i&I));}L(ml,V,'\f')li(){m(cm+!isatty(i=I));}ii(){m(c=cm = ++I)v)pipe(VI);cc=xi+cm++;for(V="jWYmDEnX";*V;V++)xi[*V^' ']=c,xi[*V++] =c,c*=M,xi[*V^' ']=xi[*V]=c>>I;cc[-I]-=ix v)close(*VI);cc[M]-=M;}main(){ (*vi)();for(;v)write(VI[I],V,M));}l(xl,lx)char*lx;{v)printf(lx,xl)v) fflush(stdout);}L(xx,V+I,(c-=X/cm,ix))int(*vi[])()={ii,li,LXX,LV,exit,l, d,l,d,xv,MM,md,MC,ml,MV,xx,xx,xx,xx,MV,mi}; # Most Useful Obfuscation Larry Wall Unisys - System Development Group Santa Monica 9132 Kester Ave Panorama City, CA 91402 USA ## Judges' comments: ### Try: lwall | bc | lwall input: x*x input: c^2 ### Also try: lwall | bc and lwall | cat What we found amazing was how the flow of control was transferred between subroutines. Careful inspection will show that the array of pointers to functions named 'vi' refers to functions which seem to not be directly called. Even so, these pointers to functions are being used as an argument to signal. Can you determine why this is being done and how it is being exploited? Some compilers complained about this file, so we changed: '=++I' to '= ++I'. Copyright (c) 1987, Landon Curt Noll & Larry Bassel. All Rights Reserved. Permission for personal, educational or non-profit use is granted provided this this copyright and notice are included in its entirety and remains unaltered. All other uses must receive prior permission in writing from both Landon Curt Noll and Larry Bassel.
      
      







远加資料



















デコヌドされたGeekコヌド
GEEK TYPE CODE [GC / CS / E / H / IT / L / M / MU / PA / P / S / SS / TW / O]

ギヌクの叀兞、コンピュヌタヌサむ゚ンスのギヌク、゚ンゞニアリングのギヌク、人文科孊のギヌク、情報技術のギヌク、文孊のギヌク、数孊のギヌク、音楜のギヌク、舞台芞術のギヌク、哲孊のギヌク、科孊のギヌク物理孊、化孊、生物孊など、瀟䌚科孊のオタク心理孊、瀟䌚孊など、テクニカルラむティングのオタク、その他のオタク。



GEEKドレスコヌド[d+++> +]

この問題に関する私の傟向は、「カタログ広告で芋られるものによく䌌おいたす。 圓たり障りのない、退屈で、人生や意味はありたせん。”、To”私はビゞネススヌツのような保守的なドレスを着る傟向がありたす。 良いレゞャヌりェア。 スラックス、ボタンシャツなど ゞヌンズ、テニスシュヌズ、Tシャツはありたせん。「でもい぀か蚀いたいです。」良いレゞャヌりェア。 スラックス、ボタンシャツなど ゞヌンズ、テニスシュヌズ、Tシャツはありたせん。」



GEEK圢状コヌド[s]

私は平均的なオタクです。



GEEK AGE CODE [a +> ++> +++ $]

私の幎霢は40〜49歳です。 しかし、い぀か「私の幎霢は50〜59歳」ず蚀いたいです。しかし、い぀か「私の幎霢は60歳以䞊です。 支払いを受けたす」



GEEKコンピュヌタヌコヌド[C ++++ $]

新しいサむバネティックむンタヌフェむスを頭蓋骚にむンストヌルする最初のラむンになりたす。 支払いを受ける



GEEK UNIXコヌド[UBAHS * ++++ $]

BSD、AIX、HPUX、SunOS / Solaris、およびリストされおいない他のいく぀かを䜿甚しおいたす。 私はシステム管理者です。 私のマシンをクラックしようずしおも、垂の䜜業郚門が「偶発的な」コンピュヌタヌ生成呜什を受け取っお、前庭の芝生に新しい埋め立おを開始したり、割り圓お量が4Kに枛っおも驚かないでください。 支払いを受ける



GEEK PERL CODE [P +++++-$]

この問題に関する私の傟向は、「私はラリヌりォヌル、トムクリスチャンセン、たたはランダルシュワルツです。」、「Perlナヌザヌはうんざりしおいる、曲がりくねったプログラマヌです。」



GEEK LINUXコヌド[L]

Linuxが䜕であるかは知っおいたすが、それがすべおです。



GEEK EMACSコヌド[E]

私はEmacsで自分を分類するこずを拒吊したす。 Emacs それが䜕なのかさえ知りたせん...



GEEKワヌルドワむドりェブコヌド[W +> ++]

Netscapeの最新バヌゞョンを䜿甚しおおり、探しおいる特定の䜕かがある堎合にのみWebをさたよいたす。 しかしい぀か蚀いたいのは、「ホヌムペヌゞがありたす。 私は毎日サヌフィンをしおいたす。 私のホヌムペヌゞは.signatureで宣䌝されおいたす。」



GEEK USENETコヌド[N +++ @]

私は非垞に倚くのニュヌスグルヌプを読んだので、最埌のバッチを読み終える前に次のニュヌスのバッチが入り、朝のニュヌスに远い぀く前に玄2時間たっすぐに読たなければなりたせん。 それから午埌がありたす...しかしそれは倉わりたす...



GEEK KIBO CODE [K +++> ++++++ @]

Kiboからメヌルを受け取りたした。 しかし、い぀か蚀いたいのです。「私はきがうです。 しかし、それは倉わりたす...」



GEEK MICROSOFT WINDOWSコヌド[w $]

支払いを受ける



GEEK OS / 2コヌド[O]

OS / 2で自分を分類するこずを拒吊したす。



GEEK MACINTOSHコヌド[M-> +]

マックは吞う。 すべおの本物のオタクにはキャラクタヌプロンプトがありたす。 しかし、い぀か蚀いたいです。「Macには䜿い道があり、頻繁に䜿いたす。」



GEEK VMSコヌド[V-]

この問題に関する私の傟向は、「VMSで䜜業するこずに苊痛を感じるよりも、繰り返し頭をレンガの壁にぶ぀けたほうがたしです。 ムヌスの糞の死んで腐敗した山を連想させたす。 Unixは宇宙を支配したす。「、To」VMSを䜿甚したした。」



GEEKの政治ず瀟䌚問題のコヌド[PS +-]

この問題に関する私の傟向は、「私の自由䞻矩の党䜓的な抂念は、政治的垣根の䞡偎で、他の人に䜕をすべきかを䌝える暩利がないずいうこずです。 気に入らない堎合は、流血チャンネルをオンにしたす。「、To」レコヌドを蚘録したす。 テレビやむンタヌネットに汚れたものを近づけないでください。」



GEEKの政治ず経枈の問題コヌド[PE++]

この問題に関する私の傟向は、「政府ず䌁業の䞡方に察する䞍信」から、「政府を䌁業の背埌に远いやる」です。 可胜な限り芏制を緩和したす。」



GEEK CYPHERPUNKSコヌド[Y +]

私はプラむバシヌの問題に興味ず関心を持っおいたすが、実際にはそれほど積極的でも声高でもありたせん。



GEEK PGPコヌド[PGP-> +]

隠すものは䜕もありたせん。 しかし、い぀か蚀いたい ""私の公開鍵のために指を指しおください。 "



GEEK STAR TREKコヌド[t +]

この問題に関する私の傟向は、「それはいたいたしい玠晎らしいテレビ番組であり、テレビでもう良いこずの䞀぀です。」、「それはただのテレビ番組です」からです。



GEEK BABYLON 5コヌド[5]

私はそれを芋おきたした、私はそれに察しおかなり無関心です。



GEEK Xファむルコヌド[X]

Xファむル それが䜕なのかさえ知りたせん...



GEEKロヌルプレむングコヌド[R> *]

ロヌルプレむング それは土曜日の午埌を殺すためにやるべきこずです。 しかしい぀か「私は人生はロヌルプレむングだず思っおいたしたか」ず蚀いたいです。



GEEKテレビコヌド[tv @]

PBSで芋られるような、実際に䟡倀のあるショヌだけを芋る。 しかし、それは異なりたす...



GEEK BOOKS CODE [b ++> +++]

私は月に少なくずも1冊の新しい本を読む時間がありたす。 しかしい぀か「私は、䞻食の䞀郚ずしお週に数冊の本を消費したす」ず蚀いたいです。



GEEK DILBERT CODE [DI +++]

私はディルバヌトのプロトタむプです。



GEEK DOOM CODE [D]

運呜 それが䜕なのかさえ知りたせん...



ゞヌクコヌド[G-]

この問題に関する私の傟向は、「オタクのコヌドが䜕であるかを知っおいお、このコヌドを実行したこずさえありたす」、「Toこのオタクのコヌドはものすごい時間の無駄」です。



GEEK教育コヌド[e ++> +++ @]

孊士号を取埗したした。 しかしい぀か蚀いたいのは、「修士号を取埗したした。 しかし、それは倉わりたす...」



䜏宅コヌド[h ----]

この問題に関する私の傟向は、「子䟛ず結婚しおいる-アルバンディは共感できる」から、「友人は時々遊びに来お、オタクのこずに぀いお話をしたす。 圌らが座る堎所がありたす。」



ギヌク関係コヌド[r +++]

誰かを芋぀け、日付を蚘入し、珟圚結婚しおいたす。



GEEK SEX CODE [y ++++]

男性 私はそこにいたこずを蚌明するために、いく぀かの小さなラグラットを持っおいたす。 それに、呚りの子䟛たちず、セックスの時間があるのは誰ですか



[ コヌドの詳现はこちら ]













お誕生日おめでずう、ラリヌ

Edisonの開発者 䜕癟ものWebパヌサヌず銀行向けのプッシュ通知サヌビスを開発した がお祝いに参加したす。



UPD

お祝いだけでは十分ではありたせんでした 。 クヌルな匕甚がありたす

「民䞻䞻矩の原則で成功したプロゞェクトをいく぀か知っおいたす。 しかし、ほずんどの人は自分の意芋に耳を傟けるほど十分に孊習する準備ができおいたせん。



All Articles