JavaScript è il nuovo BASIC


C’era una volta, in un pianeta molto molto vicino, un linguaggio che doveva rendere semplice la programmazione anche ai neofiti. Il suo nome era BASIC (sì, con tutte le lettere maiuscole). Era abbastanza semplice e poco soggetwww-programmingto a regole che si poteva scrivere rapidamente qualunque immondo accrocchio (dal punto di vista formale); effettivamente ispirò una gran massa di adolescenti a scrivere codice. Qualcuno dei più datati lettori ricorderà riviste in edicola negli anni ’80 dello scorso secolo che altro non erano che listati di vari tipi di programmi, più o meno utili, per varie piattaforme dell’epoca (Commodore VIC 20 e 64, Sinclair ZX Spectrum, MSX, …), da digitare rigorosamente a mano. Con il suo primo PC XT, IBM addirittura forniva in ROM un BASIC minimale, mentre se facevi il boot in DOS da floppy disk avevi a disposizione un interprete più avanzato, il BASICA. Più tardi Microsoft fornì il GW-BASIC, dopo sostituito da QBasic; sempre rigorosamente interpretati.

Avanti veloce agli anni ’90 e alla nascita del World Wide Web 1.0. Pare che le piattaforme cambino, ma i cicli di sviluppo siano sempre gli stessi. Pseudo-accordo pseudo-commerciale Netscape/Sun e il Navigator 2.0 non solo acquista il supporto agli applet Java, ma l’interprete LiveScript allegato al browser viene ribattezzato JavaScript, anche se con Java c’è solo una rassomiglianza superficiale. Per anni relegato a delizia e croce degli sviluppatori Web, ad esempio per fare qualche effettino o modificare gli script cento volte per funzionare adeguatamente con i vari browser in circolazione (grazie Internet Explorer: con il tuo JScript semi-compatibile mi hai dato tante ore di debug da dimenticare), oggi è al centro di una nuova rinascita.

Ufficialmente JavaScript è ancora sviluppato Mozilla, risorta come Araba Fenice dalle ceneri di Netscape. Tuttavia si sperimenta attivamente anche al di fuori, sia sul miglioramento delle prestazioni sia sull’introduzione di nuove caratteristiche nel linguaggio, che risulta più vivo dell’ultima versione di ECMAScript che ha tentato di normarlo come standard ECMA e ISO. E` fuggito da tempo dalla sua sandbox nei browser, per approdare come linguaggio di scripting in Adobe Flash (ActionScript), o in Adobe Reader (i PDF sono scriptabili), o negli interpreti stand-alone, etc. Quindi, man mano che il focus dello sviluppo in un mondo sempre più on-line si sposta verso il Web, JavaScript guadagna un ruolo sempre più importante. Il suo Rinascimento si chiama AJAX.

Ci sono valanghe di librerie disponibili, ma qui segnalo il recente rilascio della libreria utilizzata internamente da Google per le proprie applicazioni, Closure. Molto interessante che venga rilasciato anche un ottimizzatore di codice e un plug-in per Firebug, l’ottimo debugger che si integra in Firefox come sua estensione, per potere analizzare anche il codice Closure già ottimizzato.

Insomma, JavaScript è un potente mezzo espressivo da apprendere al di là della programmazione Web, in quanto le sue capacità sono state influenzate non solo da Java (e quindi da C), ma anche da nobili progenitori come LISP e Smalltalk. Chi non conosce UNIX è destinato a reinventarlo, malamente. Che sia vero anche per LISP e Smalltalk?

http://en.wikipedia.org/wiki/MSX