dimarts, 11 de maig de 2010

Petita, incompleta i majoritàriament incorrecta história dels llenguatges de programació.

Primer de tot, indicar que aquesta és només una traducció de l'original a data de 11/5/2010.

L'original es trova a: http://james-iry.blogspot.com/2009/05/brief-incomplete-and-mostly-wrong.html

1801 - Joseph Marie Jacquard utilitza unes quantes tarjetes perforades per fer que un teler cusi "hola món" sobre un tapís. Redditers del temps no es mostres impresionats, degut a la falta de recursivitat, concurrència o correcte ús de les majúscules.

1842 - Ada Lovelace escriu el primer programa. És obstaculitzada per el petit inconvenient de que no existeix cap ordinador on fer funcionar el seu codi. Arquitectes empresarials aprendràn posteriorment de les seves tècniques per tal de fer funcionar programes escrits en UML.

1936 - Alan Turing inventa tot llenguatge de programació que mai serà inventat, però és segrestat per el servei d'intel·ligència britànica per ser 007 abans de poder-los patentar.

1936 - Alonzo Church també inventa tot llenguatge de programació que mai serà inventat, però millor. El seu càlcul lambda és ignorat degut a que no és prou semblant a C. Aquestes crítiques continuen malgrat el fet de que C encara no ha estat inventat.

1940s - Diversos "ordinadors" són "programats" usant conneccions directes i switchos. Enginers ho fan així per tal d'evitar el debat de "tabulació" vs "espais".

1957 - John Backus i IBM creen FORTRAN. No hi ha res de divertit sobre IBM o FORTRAN. És un error de sintaxis escriure FORTRAN si no es du una corbata blava.

1958 - John McCarthy i Paul Graham inventen LISP. Degut als alts costos provocats per la exaustió post-guerra de la reserva estratègica de parèntesis, LISP no és mai popular [1]. Malgrat la seva manca de popularitat, LISP (ara "Lisp" o a vegades "Arc") continua sent un llenguatge influencial en "tècniques algoritmiques clau com la recursivitat i la condensació"[2].

1959 - Després de perdre una juguesca amb L. Ron Hubbard, Grace Hopper i altres sadistes inventen el "Llenguatge Orientat a la Capitalització de lo Repetitiu" (COBOL - Capitalization Of Boilerplate Oriented Language) . Anys més tard, en una malintencionada i sexista revenja contra la feina d'Adm. Hopper en COBOL, conferències de Ruby sovint contenen material misògin.

1964 - John Kemeny i Thomas Kurtz creen BASIC, un llenguatge desestructurat per a no-informàtics.

1965 - Kemeny i Kurtz go to 1964.

1970 - Guy Steele and Gerald Sussman creen Scheme. La seva feina porta a una série de documents "Lambda el Definiu" culminant en "Lambda el Definitiu Estri de Cuina." Aquest document científic es converteix en la base de una sèrie de llargs però inefectius anuncis de matinada. Les Lambdas són condemnades a un relatiu oblid fins que Java els fa populars no tenint-ne.

1970 - Niklaus Wirth crea Pascal, a un llenguatge procedural. Els crítics denuncien inmediatament Pascal perquè usa la sintàxi "x := x + y" en comptes de la més familiar estil C "x = x + y". Aquestes crítiques continuen malgrat el fet de que C encara no ha estat inventat.

1972 - Dennis Ritchie inventa una potent pistola que dispara endavant i enrere a la vegada. No satisfet amb la quantitat de morts i lisiats permanents que això causa, inventa C i Unix.

1972 - Alain Colmerauer dissenya el llenguatge lògic Prolog. El seu objectiu és crear un llenguatge amb l'intel·ligència d'un nen de 2 anys. Demostra haver aconseguit el seu objectiu mostrant una sessió de Prolog que respon "No." a cada pregunta.

1973 - Robin Milner crea ML, un llenguatge basat en la teoria M&M de tipus. ML engendra SML, que té una semàntica formal especificada. Quan és preguntat per una semàntica formal de la semàntica formal, el cap de Miller explota. Altres coneguts llenguatges de la família de ML són OCalm, F# i Visual Basic.

1980 - Alan Kay crea Smalltalk i inventa el terme "orientació a objecte" Quan és preguntat per què vol dir respon: "Els programes d'Smalltalk nomès són objectes." Quan és preguntat per de què estàn fets els objectes respon: "objectes". Quan és preguntat una altra vegada diu "mira, és objectes tota l'estona. Fins que arrives a les tortugues."

1983 - En honor a l'habilitat d'Ada Lovelace de crear programes que mai són executats, Jean Ichbiah i el Departament de defensa dels EEUU creen el llenguatge de programació Ada. Malgrat la manca d'evidència de que mai algun programa important en Ada és mai completat, els historiadors creuen que és un exitós programa públic que manté a milers d'empleats de defensa fora de les màfies.

1983 - Bjarne Stroustrup afegeix tot el que mai ha sentit a C per crear C++. El llenguatge resultant és tant complexe que els programes han de ser enviats al futur per ser compilats per la IA Skynet. Els temps de compilació ho pateixen. Els motius d'Skynet per fer aquest server són incerts, però un representant del futur diu "no hi ha res de què preocuparse, baby" amb un accent monotó austriac. Hi ha especulacions de que Skynet no és més que un pretenciós "buffer overrun".

1986 - Brad Cox i Tom Love creen Objective-C, anunciant "aquest llenguatge té tant la seguretat de memòria de C combinat amb l'electritzant velocitat d'Smalltalk." Historiadors moderns sospiten que ambdós eren dislèxics.

1987 - Larry Wall cau dormit i el front de Larry Wall topa amb el teclat. Després de llevar-se, Larry Wall decideix que la cadena de caràcters en el monitor de Larry Wall no és aleatòri, sinó un exemple d'un llenguatge de programació que Déu vol que el Seu profeta, Larry Wall, dissenyi. Neix Perl.

1990 - Un comité format per Simon Peyton-Jones, Paul Hudak, Philip Wadler, Ashton Kutcher, i Gent per el Tractament Étic d'Animals crea Haskell, un llenguatge funcional pur i no estricte. Haskell trova certa resistència degut a la complexitat d'utilitzar monads per tal de controlar efectes secundàris. Walder tracta de complaure els crítics explicant que "un monad és un monoide en la categoria dels endofunctors, quin és el problema?"

1991 - El programador holandès Guido van Rossum viatge a Argentina per a una operació misteriosa. Torna amb una gran cicatriu cranial, inventa Python, és declarat Dictador de Per Vida per una legió de seguidors i anuncia al món que "Només Hi Ha Una Manera De Fer-Ho." Polònia es posa nerviosa.

1995 - En un restaurant italià del barri, Rasmus Lerdorf descobreix que un plat d'espaguetis és la metàfora perfecte per entendre el "word wide web" i que les aplicacions web han d'imitar-ho. Al dors del seu tovalló dissenya el "Programmable Hyperlinked Pasta" (PHP). La documentació del PHP continua en aquell tovalló.

1995 - Yukihiro "Mad Matz" Matsumoto crea Ruby per advertir d'un vagament unespecificat apocalipsi que convertirà a Austràlia en un desert controlat per guerrers mohawk i Tina Turner. El llenguatge és després reanomenat Ruby on Rails per el seu inventor real, Davin Heinemeier Hansson. [La part sobre Matsumoto inventant un llenguatge anomenat Ruby mai ha passat i millor esborrar-la en la següent versió d'aquest article - D.H. Hansson].

1995 - Brendan Eich llegeix una llista de tots els errors fets dissenyant un llenguatge de programació, n'afegeix uns quants més i crea LiveScript. Després, amb la idea d'enganxar-se a la popularitat de Java el reanomena "JavaScript". Més després, per tal d'atrapar la popularitat de les malalties de la pell, el reanomena ECMAScript

1996 - James Gosling inventa Java. Java és un llenguatge de programació relativament redundant, estàticament tipat, de crida única i orientat a objecte amb herència única, però amb múltiple herència d'interfícies. Sun pregona la noblesa de Java.

2001 - Anders Hejlsberg inventa C#. C# és un llenguatge de programació relativament redundant, estàticament tipat, de crida única i orientat a objecte amb herència única, però amb múltiple herència d'interfícies. Microsoft pregona la noblesa de C#.

2003 - Un borratxo Martin Odersky veu un anunci de mantega de cacauet mostrant la crema de cacauet d'algú caient sobre el xocolata d'algú altre i té una idea. Crea Scala, un llenguatge que unifica les construccions tant dels llenguatges orientats a objecte com dels llenguatges funcionals. Això molesta a ambdós grups i tots declaren la Jihad.

Notes:
  1. Afortunadament per la informàtica, les reserves de claus d'ator i corxets són altes.
  2. Catch as catch can - Verity Stob

Cap comentari:

Publica un comentari a l'entrada