Dossier

Torino e il Piemonte nella storia dell’informatica

Charles Babbage e l’Accademia delle Scienze

Pochi sanno che la storia dell'informatica può essere fatta iniziare a Torino. Era la fine del 1840 e si svolgeva presso l'Accademia delle Scienze torinese il secondo congresso degli scienziati, o, come si diceva allora, dei "filosofi italiani". Dall'Inghilterra arrivò anche il matematico Charles Babbage, oggi considerato il primo informatico della storia. Lo accompagnava un amico piemontese, Federico Prandi, che viveva in esilio a Londra, essendo stato condannato a morte per aver partecipato ai moti liberali del 1821, e che proprio in virtù della sua amicizia con Babbage aveva ricevuto uno speciale salvacondotto per un breve ritorno in patria. Più tardi Prandi sarà graziato e diverrà uno dei più attivi imprenditori del Regno.

Babbage aveva prodotto, nei suoi primi anni di attività scientifica, un ottimo lavoro tecnico grazie al quale era stato chiamato a coprire la cattedra di Matematica dell'Università di Cambridge. Ma da una decina di anni aveva lasciato la teoria per buttarsi, anima e corpo, nello studio e nel progetto del primo calcolatore della storia. Veniva a Torino per presentare alla comunità scientifica mondiale, per la prima volta, il frutto del suo lavoro e portava con sé un enorme baule contenente i disegni ed il modello di qualche parte della sua "Analitical Engine", o "Macchina Matematica".Macchina alle differenze, n. 2

Molti dei disegni rimarranno all'Accademia delle Scienze, ove sono conservati tuttora.

La maggior parte degli episodi scritti in questo articolo è tratta dall'autobiografia di Charles Babbage (Passages from the life of a philosopher), che è del 1862. Sul frontespizio del volume l'autore ricorda la sua onorificenza di Commendatore dell'Ordine Italiano di San Maurizio e San Lazzaro: nella prima pagina, in grande evidenza, è la dedica del volume a Vittorio Emanuele II, che merita di essere tradotta perché può essere interpretata come l'atto di nascita della nuova scienza.

"Sire, nel dedicare questo volume a sua Maestà, io compio un atto di giustizia nei confronti della memoria di del Vostro illustre Padre. Nel 1840 il re Carlo Alberto invitò i saggi d'Italia a riunirsi nella sua capitale. Su invito del suo più grande matematico, io portai con me i disegni e le spiegazioni dell'Analitical Engine. Essi furono ampiamente discussi e la loro validità fu riconosciuta dai più eletti figli d'Italia. Al Re, Vostro Padre, io devo il primo riconoscimento pubblico ed ufficiale di questa invenzione. Sono lieto di esprimere la mia riconoscenza a Suo Figlio, il Sovrano dell'Italia unita, il Paese di Archimede e Galileo".

Il matematico che aveva invitato Babbage in Italia era Giovanni Plana ingegnere e militare, autorevole membro dell'Accademia delle Scienze.

Giovanni Antonio Amedeo Plana Era anche direttore dell'Osservatorio astronomico di Palazzo Madama ed è ancor oggi noto per un trattato in tre volumi sul movimento della Luna. Come tutti gli astronomi di quei tempi, era probabilmente assillato dal problema del calcolo delle orbite dei corpi celesti.

Forse fu il desiderio di far meglio quei calcoli spendendo minor fatica ad indurre Plana ad invitare a Torino Babbage, della cui fantastica macchina matematica già si parlava molto, anche se nessun articolo scientifico le era ancora stato dedicato. Il dibattito con i matematici italiani fu appassionato e si svolse non solo in pubblico, ma anche nell'ambito di gruppi di lavoro più ristretti, proseguendo a volte nella stessa stanza di Babbage.

Particolarmente importante è il confronto tra Babbage ed Ottaviano Mossotti, giovane fisico ed astronomo, che dopo un lungo esilio era stato appena chiamato all'Università di Pisa. Di lì nel 1848 accorrerà volontario in Lombardia, a capo del battaglione universitario toscano, e si coprirà di gloria nella battaglia di Curtatone e Montanara. L'interesse storico e scientifico del dibattito tra Babbage e Mossotti deriva dall'assoluta novità dell'argomento trattato, che non riguarda tanto l'esecuzione delle operazioni aritmetiche considerate singolarmente, quanto il concatenamento delle singole operazioni e l'esecuzione di un vero e proprio programma.

Racconterà Babbage nella sua autobiografia: "Mossotti dichiarò di aver ben compreso le capacità della macchina nello sviluppo delle operazioni matematiche e nel trattamento delle relazioni algebriche. Tuttavia, egli aggiunse di non aver alcuna idea di come la macchina potesse eseguire valutazioni di giudizio, quando il processo di calcolo può procedere su due o più linee diverse di elaborazione, la cui scelta fosse dipendente dai risultati dei calcoli precedenti". Sulla questione si aprì un ampio dibattito, ampiamente documentato nella autobiografia di Babbage, che a distanza di molti anni conserva intatto il suo fascino storico e il suo interesse scientifico.

Macchina calcolatrice di Leibniz Abachi, pallottolieri ed altri ingegnosi strumenti di calcolo compaiono nella storia antica di tutte le civiltà e da tempo consentivano l'esecuzione automatica o semiautomatica delle singole operazioni aritmetiche. Il diciannovenne Blaise Pascal, 200 anni prima di Babbage, aveva costruito una calcolatrice meccanica che eseguiva somme e sottrazioni e, trenta anni dopo, Gottfried von Leibniz, aveva realizzato una macchina a ruote dentate che calcolava anche la moltiplicazione, la divisione e la radice quadrata.

Ma a Torino, per la prima volta, si parlò di programma, il concetto centrale della scienza e della tecnica informatica: ossia della descrizione della sequenza delle istruzioni, con possibili salti e diramazioni, da eseguirsi automaticamente senza l'intervento dell'uomo fra un'operazione e la successiva e da considerarsi come un dato di ingresso alla pari dei dati numerici.

La descrizione del programma era affidata, nell'invenzione di Babbage, alla scheda perforata, figlia del cartone che Jacquart aveva introdotto nel telaio qualche decennio prima, per memorizzare il disegno da riprodurre.

Macchina calcolatrice di Pascal

Le schede erano di due tipi: le schede dati, destinate ai valori numerici delle grandezze da trattare e le schede programma contenenti la descrizione analitica delle singole istruzioni, ossia delle singole operazioni elementari da eseguirsi. E' importante ricordare che la stessa soluzione sarà adottata, oltre cento anni dopo, dall'IBM nei suoi primi elaboratori elettronici.

Si notino nella fotografia a fianco di una scheda programma (ancor oggi conservata nell'archivio dell'Accademia delle Scienze) le indicazioni a penna dello stesso Babbage relative al significato di ciascun foro.

Le schede perforate costituiranno le unità fondamentali di ingresso nei calcolatori elettronici della prima e della seconda generazione sino al 1975, quando il floppy disk subentrerà alla scheda.

L'architettura del calcolatore di Babbage è esattamente uguale a quella dei calcolatori di oggi (si veda la figura a fianco). Vi è un'unità di calcolo, o unità aritmetica, che è l'organo che esegue le singole operazioni aritmetiche. Nella macchina di Babbage questa unità era chiamata mill o mulino ed era costituita da una pluralità di ruotine dentate. Ogni ruota dentata aveva dieci possibili posizioni, corrispondenti alle dieci cifre decimali, e un complesso meccanismo generava le somme e le sottrazioni sommando e sottraendo rotazioni delle ruotine.

Vi è poi un'unità di memoria, che Babbage chiamava, store o magazzino. La memoria è gerarchicamente suddivisa in una memoria centrale, più costosa, ove risiedono i dati che sono letti o scritti più frequentemente, e una memoria periferica destinata a contenere grandi volumi di dati, come i programmi, gli archivi, e così via. Nei calcolatori moderni, tipicamente, la memoria centrale è costituita da registri a stato solido, mentre la memoria periferica è costituita da hard disk e altri dispositivi. Nella macchina di Babbage la memoria centrale era costituita dalle ruotine dentate e la memoria periferica dai pacchi delle schede perforate. Si noti che, al fine di conferire flessibilità al sistema di elaborazione, oggi come nella macchina di Babbage, la memoria può contenere dati o programmi, senza una ripartizione rigida tra i primi e i secondi.

Vi sono poi una o più unità di ingresso e una o più unità di uscita. Gli apparati di ingresso o uscita della macchina di Babbage erano rudimentali, ma concettualmente simili alle tastiere e ai visualizzatori di oggi. Inoltre, le stesse unità di memoria - le schede perforate nel caso di Babbage - possono anche costituire ingressi o uscite del calcolatore.

Infine, vi è oggi, come nella macchina di Babbage, un'unità di controllo che ha il compito di interpretare le singole schede programma e inviare i segnali di comando alle altre unità del calcolatore in modo da eseguire correttamente le istruzioni descritte nelle schede programma.

Babbage non aveva mai trovato il tempo di descrivere la sua invenzione in un articolo scientifico. Così Plana si accinse a farlo, ma dopo poco si accorse della difficoltà e della complessità del lavoro e vi rinunciò. Plana aveva ricevuto il titolo nobiliare di barone ed era anche Barone in senso accademico, autoritario e quasi dispotico. Così trasferì il compito di descrivere la macchina matematica ad un suo giovane e brillante collaboratore, Luigi Federico Menabrea.

Menabrea, che sarebbe certamente divenuto un grande uomo di scienza se non avesse avuto altri interessi, produsse un ottimo documento illustrativo della macchina di Babbage. L'articolo fu presentato nel 1842 alla Bibliotèque Universelle de Genève e ha importanza concettuale e storica perché può essere considerato il primo lavoro scientifico nel settore dell'informatica.

Qualche mese più tardi il lavoro di Menabrea fu tradotto in inglese ed ampiamente commentato dalla contessa Ada di Lovelace, figlia di Lord Byron, studiosa dalla approfondita cultura matematica, che aveva sempre seguito con molto interesse il lavoro di Babbage. Anche i commenti di Ada Byron hanno grande valore scientifico. Tra l'altro Ada discusse in quelle note la programmabilità del calcolatore di Babbage come strumento di guida del telaio per la tessitura; per questa ragione viene oggi considerata la prima programmatrice della storia e potrebbe essere ricordata anche come la prima utilizzatrice dell'informatica per l'automazione.

In suo onore, l'importante linguaggio di programmazione voluto dal Dipartimento della Difesa degli Stati Uniti d'America per risolvere il problema della standardizzazione del suo software è stato chiamato Ada.

In una delle sue note Ada iniziò quello che da allora è noto come il Regime di Lovelace, asserendo che una macchina può fare solo ciò che le si ordina e nient'altro:

"La macchina matematica non ha la pretesa di creare nulla. Può analizzare, ma non ha le capacità di anticipare le connessioni o le verità analitiche. L'unica sua funzione è quella di rendere accessibili le conoscenze già acquisite". E', anche questo, un punto di grande interesse storico perché, secondo alcuni studiosi, con l'avvento dell'Intelligenza Artificiale il Regime Lovelace è finito.

Ada amava le piccole trasgressioni. Così la passione per le corse dei cavalli la indusse a dimenticare ciò che aveva scritto nella nota sopra citata e a sviluppare un programma di ausilio allo scommettitore, basato sul calcolo della probabilità. Questa idea ha valore storico e avrebbe dovuto darle il titolo della prima programmatrice di un sistema esperto, ossia di un sistema di calcolo che incorpori le conoscenze di un esperto in un dato settore. Per il momento la comunità scientifica non le ha ancora attribuito questo riconoscimento, forse per il fatto che Ada dovette vendere i gioielli di famiglia per pagare i debiti di gioco.

Babbage non completò mai la realizzazione di una delle sue macchine. L'ultimo suo modello di macchina matematica avrebbe dovuto essere grande come un campo di calcio ed essere azionato da un enorme motore a vapore. Il primo ministro Benjamin Disraeli gli rifiutò il finanziamento, affermando che l'unica applicazione concreta di quella macchina gli appariva il calcolo delle somme già spese per le ricerche di Babbage.

Disraeli aveva ragione. Babbage aveva compreso che un calcolatore programmabile doveva contenere molte migliaia di componenti elementari, ma le routine dentate a cui si affidava, per quanto miniaturizzate, avrebbero sempre avuto un ingombro ed un costo inaccettabili. La più raffinata tecnologia meccanica era inadeguata alle idee di Babbage. Occorreva aspettare cento anni e l'avvento di una nuova tecnologia, la microelettronica, per tradurre quelle idee geniali in realtà.

Suggerimenti