Era la fine di novembre 1983 quando Borland rilasciò uno degli ambienti di sviluppo integrato (IDE) e compilatori più influenti nel campo della programmazione software: Turbo Pascal. Chi, fino agli anni ’90, si è avvicinato al mondo dello sviluppo, soprattutto in ambito didattico e accademico, non può non aver lavorato con Turbo Pascal.
Perché fu chiamato Turbo Pascal? Il linguaggio di programmazione Pascal esisteva già: fu progettato negli anni ’60 dal docente svizzero Niklaus Wirth, per poi essere ufficialmente lanciato nel 1971 principalmente per finalità di insegnamento e per lo sviluppo di software affidabile. Pascal, tuttavia, era privo di un IDE e di un compilatore ottimizzato. Gli sviluppatori dovevano utilizzare diversi strumenti separati per scrivere, modificare e compilare il codice. Turbo Pascal ebbe l’enorme vantaggio di integrare tutte queste funzionalità in un singolo ambiente, rendendo il flusso di lavoro molto più fluido.
Cos’è Turbo Pascal e come divenne un successo planetario
Gli strumenti offerti agli sviluppatori che utilizzavano il linguaggio Pascal, almeno nelle prime fasi, erano principalmente interpreti, non compilatori, ed erano basati su un’architettura non molto diversa da quella della Java JVM. I programmi erano comunque significativamente più veloci di quelli sviluppati ricorrendo al linguaggio BASIC.
Turbo Pascal è nato per portare il linguaggio Pascal dal contesto accademico a un pubblico più ampio di sviluppatori professionisti, fornendo strumenti avanzati e un ambiente di sviluppo integrato. La presentazione di Turbo Pascal coincise con un periodo davvero “frizzante” per il mondo dell’informatica in generale. I primi anni ’80 segnarono l’arrivo sul mercato dei PC IBM: con i personal computer arrivò il supporto diretto per linguaggi di programmazione quali BASIC, C e Pascal.
Nel ripercorrere la storia di Turbo Pascal, Marco Cantù – esperto Delphi di lungo corso, autore di decine di testi tecnici e Product Manager per RAD Studio presso Embarcadero Technologies – racconta la nascita dell’IDE e del relativo compilatore.
L’accordo tra Philippe Kahn (Borland) e l’autore del compilatore, Anders Hejisberg, che divenne la base di Turbo Pascal
Quasi contemporaneamente al lancio dei primi PC IBM, scrive Cantù, “un imprenditore francese (Philippe Kahn, fondatore di Borland, n.d.r.) che aveva studiato matematica al Politecnico di Zurigo (…) scoprì che qualcuno in Danimarca (Anders Hejisberg, n.d.r.) aveva scritto un compilatore Pascal molto veloce per i computer CP/M, (…) per una società chiamata PolyData. Lo vendevano principalmente alle persone della zona. Una volta ho parlato con uno sviluppatore che andò in bicicletta a casa di Anders per ottenere una copia patchata“.
Kahn e Hejisberg si accordarono e il primo, che all’epoca era squattrinato, contattò il magazine Byte (la rivista di informatica più famosa dell’epoca) per pubblicare un annuncio senza pagarlo in anticipo. L’imprenditore francese si mise insomma a vendere quel performante compilatore Pascal per la modica cifra di 49,99 dollari. Gli altri strumenti simili costavano ben oltre i 300 dollari. L’interesse degli sviluppatori fu enorme e quel prodotto, battezzato Turbo Pascal, convinse subito tutti. Tanto che lo stesso Hejisberg si trasferì dalla Danimarca a Scotts Valley, in California, per lavorare a tempo pieno sul prodotto.
Lo storico annuncio Borland che offriva l’acquisto di una licenza di Turbo Pascal, per posta.
Nei primi due anni dal lancio, Borland vendette circa 250.000 copie di Turbo Pascal: un’enormità se si pensa che l’attività di commercializzazione avveniva esclusivamente con ordini per posta e che si trattava di un strumento per gli sviluppatori dei primi anni ’80.
Le caratteristiche vincenti di Turbo Pascal
Tanti aspetti diversi contribuirono al successo sconfinato di Turbo Pascal. Il linguaggio alla base del prodotto era convincente ma, soprattutto, Turbo Pascal era uno dei primi IDE: la possibilità di compilare il codice sorgente ed effettuare direttamente le attività di debugging era qualcosa di impagabile. Un enorme risparmio di tempo rispetto alle modalità operative per lo sviluppo software che fino ad allora si utilizzavano.
L’altro fiore all’occhiello di Turbo Pascal erano le prestazioni: gran parte del codice alla base del suo funzionamento era scritto in Assembly. Inoltre, Turbo Pascal usava un “single pass compiler“: la caratteristica principale di un “single pass compiler” è che analizza, elabora e genera il codice oggetto in una singola iterazione attraverso il codice sorgente. Il compilatore legge il codice sorgente una sola volta e genera direttamente il codice oggetto senza effettuare passaggi intermedi.
È vero che i “single pass compiler” soffrono di alcune limitazioni intrinseche (alcune ottimizzazioni avanzate, ad esempio, richiedono una visione più completa del codice sorgente), ma sono comunque veloci. Cantù ricorda che alcuni compilatori di oggi sono ancora “single pass compiler“: Delphi 11 Alexandria, ad esempio, è uno di essi.
Turbo Pascal vive ancora oggi: ecco dove
Non crediate che Turbo Pascal sia ormai un linguaggio superato, qualcosa che ormai appartiene alla storia dell’informatica. Le idee alla base di Turbo Pascal hanno infatti portato Borland a lavorare dapprima su un progetto interno chiamato AppBuilder per poi evolvere nel 1995 in Delphi. Quest’ultimo arrivò sul mercato introducendo una nuova importante rivoluzione: fu uno dei primi strumenti di sviluppo RAD (Rapid Application Development) e il primo ambiente di sviluppo completamente visuale, basato su di un compilatore estremamente veloce se paragonato con quelli dell’epoca.
Delphi è noto per la sua facilità d’uso, la rapidità di sviluppo e la possibilità di creare applicazioni con un’interfaccia utente grafica. Combinava le fondamenta di Turbo Pascal con Object Pascal, estensione di Pascal che aggiunge il concetto di programmazione orientata agli oggetti (presentato da Apple nel 1986).
Dopo un “passaggio di mano” intermedio, Delphi continua a essere sviluppato, oggi, sotto l’egida di Embarcadero Technologies che ha raccolto il lavoro inizialmente svolto da Borland per proseguire lo sviluppo del linguaggio di programmazione.
Delphi ha raccolto il testimone da Turbo Pascal
Cantù racconta che lo sviluppo con Delphi rimane centrale in ambiente Windows: la piattaforma è in continua evoluzione, sotto il nome di RAD Studio. “Ho lavorato molto in questo settore. Dall’integrazione del controllo WebView 2 (il motore del browser Chromium Edge) al supporto MSIX, per citarne un paio di aree su cui mi sono concentrato“, spiega Cantù.
Il prodotto ha subito molte trasformazioni. Delphi 2 aveva un compilatore a 32 bit per Windows 95. Nel periodo di Delphi 6, Borland ha creato Kylix, un IDE basato su Linux per la creazione di applicazioni desktop Linux. Successivamente, l’azienda si è avvicinata a .NET e ha creato una nuova architettura IDE chiamata “Galileo”, che sopravvive ancora oggi.
“Delphi ha chiaramente superato i suoi giorni d’oro, ma il prodotto è ancora vivo e genera un buon business, giustificando un solido investimento in ricerca e sviluppo. E la comunità Delphi è ancora al lavoro per costruire software di ogni tipo e in ogni latitudine“, osserva Cantù spiegando di aver stilato una lista di settori in cui Delphi, e quindi Pascal, sono attivamente utilizzati ai giorni nostri. L’elenco è davvero incredibile, e non sono “casi teorici”.
Codice compilato in Pascal è utilizzato a vari livelli ai giorni nostri
Alcuni dei casi d’uso sono davvero meravigliosi. Il codice compilato in Pascal sta aiutando ad illuminare le cascate del Niagara, a muovere le gru dei container nei porti, a mostrare dati sui giocatori in tempo reale in TV, a presentare dichiarazioni fiscali e inviare fatture elettroniche, a progettare CPU,…
Qual è l’applicazione più riuscita costruita con Object Pascal? “In termini di business e industry disruption (cambiamento significativo e radicale in un settore industriale a causa di nuove tecnologie, modelli di business innovativi o altre forze che cambiano il panorama competitivo in modo sostanziale, n.d.r.) citerei Skype. Microsoft ci ha speso miliardi“, osserva ancora Cantù.
Delphi è incentrato principalmente sullo sviluppo di applicazioni desktop utilizzando Object Pascal, mentre RAD Studio è una suite più ampia che offre la possibilità di sviluppare applicazioni multipiattaforma utilizzando vari linguaggi di programmazione. Delphi è inclusa come componente di RAD Studio, e l’acquisto di una licenza RAD Studio fornisce funzionalità più estese rispetto al solo Delphi.
Le immagini nell’articolo sono tratte dal post di Marco Cantù.