Hejlsberg: l’anello di congiunzione tra il Pascal e il dotNet Framework

Anders Hejlsberg è l’uomo che ha realizzato i linguaggi (e i framework) con cui tutti i programmatori si sono quasi sicuramente confrontati durante il loro percorso professionale.

 

Anders Hejlsberg

Durante gli studi universitari presso la Technical University of Denmark (1980, Lyngby), realizza  alcuni programmi per i microcomputer Nascom tra cui uno specifico compilatore Pascal, commercializzato come Blue Label Software Pascal (BLS Pascal per il Nascom-2). Il passo successivo è il porting del compilatore sui sistemi operativi CP/M e DOS, con il nome iniziale di Compas Pascal divenuto poi PolyPascal, in seno alla PolyData.

Proprio grazie al Compas Pascal, Hejlsberg entra in contatto con Borland, che prende in licenza il compilatore al fine di integrarlo nel nascente IDE Turbo Pascal e stringe un accordo con il suo creatore per apportare le necessarie modifiche. Ma qui sorge un problema: Hejlsberg è in Danimarca mentre Borland in California (Scott’s Valley). Così la società guidata da Kahn invia al giovane programmatore un “velocissimo” modem a 9.600-baud in modo da poter condividere gli sviluppi con il team Borland, tipicamente inviando le modifiche negli orari notturni statunitensi.

Il risultato di tale lavoro è la prima versione del Turbo Pascal, un IDE rivoluzionario per il 1983 (rilasciato ufficiale il 20 novembre) che apre la strada verso un nuovo modo di fare sviluppo, grazie ad un prezzo pari a 1/10 (49,95$) di quello dei concorrenti e un compilatore velocissimo, merito proprio dell’ottima programmazione in assembly di Hejlsberg.

Una curiosità: per promuovere il proprio Turbo Pascal, Borland pubblica su Dr. Dobb’s Journal of Software una striscia di fumetti chiamata “Le Avventure di TurboMan”, il supereroe dei programmatori.

The Adventures of TurboMan

Borland viene così proiettata nell’olimpo delle Software House e Hejlsberg (nel 1989) si trasferisce in California per seguire direttamente lo sviluppo del Turbo Pascal, anche in seguito ai problemi finanziari della sua PolyData.  Assunto il ruolo di Chief Engineer di Borland, si concentra unicamente sullo sviluppo del Turbo Pascal fino alla sua più discussa versione: la 5.5, dotata del supporto alla programmazione Object Oriented (OO).

Turbo Pascal 5.5

Per abbracciare il nuovo paradigma OO, però, il (Turbo) Pascal richiede una profonda revisione Anders pianifica la realizzazione dell’Object Pascal (partendo dallo specifico Draft Apple sull’argomento), alias Delphi. I tecnico danese assume il ruolo di Chief Architect del nuovo progetto insieme a Chuck Jazdzewsk­.

Oltre alla nuova filosofia Object Oriented, il Delphi si pone come strumento di sviluppo cooperativo, superando l’idea che lo sviluppo del software potesse essere affidato ad un’unica persona, così come affermato dallo stesso Hejlsberg:

“Back in the old Turbo Pascal days, it was possible for one person to write and maintain an entire product. This is no longer the case. Delphi was built by a team.”

[A tempi del Turbo Pascal era possibile per una persona scrivere e manutenere un intero prodotto. Ora non è più così. Delphi stesso è stato realizzato da un Team]

Nel 1996 Hejlsberg è pronto per una nuova sfida: assumere il ruolo di Chief Architect in Microsoft relativamente allo sviluppo di Visual J++ e delle librerie Windows Foundation Classes (alias WCF), pensate, inizialmente,  per la creazioni di GUI professionali per Windows sfruttando il linguaggio Java. J++ comunque non abbraccia in pieno le specifiche SUN, scatenando una causa legale con Microsoft che porterà all’abbandono ufficiale del linguaggio. Parte del Core di J++ verrà utilizzato per realizzare J#, un linguaggio CLR Based con una sintassi java-like, oggi non più supportato da Redmond.

Nel frattempo arriva però la madre di tutte le sfide: realizzare la nuova infrastruttura Next Generation Windows Services (NGWS), che dovrà servire come base per lo sviluppo delle future applicazioni di Rete. Il nuovo ambiente si differenzia fortemente dal precedente Windows DNA, utilizzando XML come formato standard di comunicazione ed interscambio dei dati. Il progetto prosegue con forza e nel 2000 comincia ad assumere la nomenclatura ufficiale di .Net Framework.

Le prime versioni preliminari di NGWS sono scritte nel linguaggio Simple Managed C (SMC), ma Hejlsberg non è soddisfatto e mette insieme un Team per lo sviluppo di un nuovo linguaggio: Cool, ovvero “C like Object Oriented Language”.

Il nome Cool piace anche alla divisione Marketing che, inizialmente pensa di mantenerlo, ma successivamente, per ragioni di copyright, decide di depennarlo in favore di C#. Chiaramente il nuovo linguaggio è fortemente influenzato dall’esperienza maturata da  Hejlsberg durante lo sviluppo di Delphi e oggi è uno dei linguaggi più utilizzati e apprezzati, unitamente al framework dotNet e all’ultima creatura (in ordine temporale) di Hejlsberg; il Language Integrated Query (LINQ).

Nel 2001 Hejlsberg riceve il Dr. Dobb’s Excellence in Programming Award, per il suo fondamentale contributo per il Turbo Pascal, Delphi, C# e .Net. Inoltre gli è stato conferito il Recognition Award for Outstanding Technical Achievement per il suo contributo al linguaggio C#, unitamente a Scott Wiltamuth, Shon Katzenberger, Todd Proebsting, Peter Sollich, Erik Meijer e Peter Hallam.

Press ESC to close