I vecchi linguaggi: il Cobol
Il linguaggio COBOL: storia, evoluzione e persistenza di un pilastro dell’informatica gestionale. Nella storia dell’informatica pochi linguaggi hanno avuto un impatto tanto duraturo quanto COBOL, acronimo di Common Business-Oriented Language. Nato in un’epoca in cui i computer occupavano intere stanze e la programmazione era ancora una disciplina in formazione, COBOL fu progettato con un obiettivo molto chiaro: rendere l’informatica uno strumento affidabile per la gestione delle attività economiche e amministrative. Più di sessant’anni dopo la sua nascita, continua a rappresentare l’infrastruttura invisibile su cui poggiano sistemi bancari, assicurativi e governativi di tutto il mondo. Comprendere COBOL significa quindi comprendere una parte fondamentale dell’evoluzione dei sistemi informativi moderni. La genesi di COBOL risale alla fine degli anni Cinquanta, in un periodo in cui l’informatica stava passando da una dimensione puramente scientifica e militare a una più ampia applicazione nel mondo delle imprese. I linguaggi esistenti, come FORTRAN o Assembly, erano potenti ma poco adatti alla gestione di grandi quantità di dati amministrativi. Il Dipartimento della Difesa degli Stati Uniti promosse quindi nel 1959 la creazione di un linguaggio standard orientato alle applicazioni commerciali. Il progetto venne sviluppato da un consorzio di aziende e istituzioni riunite nel comitato CODASYL, Conference on Data Systems Languages. Tra le figure che influenzarono profondamente il progetto vi fu la pioniera dell’informatica Grace Hopper, già nota per il suo lavoro sui compilatori e sulla possibilità di avvicinare il linguaggio umano alla programmazione. L’idea alla base di COBOL era radicale per l’epoca: creare un linguaggio che assomigliasse all’inglese scritto, in modo che il codice potesse essere compreso anche da analisti e dirigenti aziendali. Questa filosofia portò alla nascita di una sintassi molto descrittiva, basata su frasi leggibili e strutture verbali chiare. Le istruzioni non erano stringhe di simboli criptici ma vere e proprie proposizioni, come ADD AMOUNT TO TOTAL oppure IF BALANCE IS GREATER THAN LIMIT. L’obiettivo era ridurre la distanza tra il linguaggio della gestione aziendale e quello della macchina. I primi standard di COBOL vennero pubblicati nel 1960 e trovarono rapidamente applicazione nei sistemi informativi delle grandi organizzazioni. Negli anni Sessanta e Settanta, con l’espansione dei computer mainframe prodotti da aziende come IBM, COBOL divenne il linguaggio dominante per le applicazioni amministrative. Le imprese lo utilizzavano per elaborare paghe, gestire contabilità, registrare transazioni e amministrare archivi di clienti e fornitori. In un’epoca in cui le operazioni venivano eseguite tramite elaborazioni batch, spesso durante la notte, COBOL si dimostrò particolarmente efficiente nella gestione di grandi file sequenziali di dati. La struttura del linguaggio rifletteva questa vocazione organizzativa. Un programma COBOL era diviso in sezioni ben definite chiamate divisioni. L’Identification Division conteneva le informazioni sul programma e sul suo autore, l’Environment Division descriveva l’ambiente hardware e i dispositivi di input e output, la Data Division definiva tutte le strutture dati utilizzate dall’applicazione e la Procedure Division racchiudeva la logica operativa. Questa suddivisione non era soltanto una scelta tecnica ma anche metodologica: imponeva una disciplina progettuale che facilitava la manutenzione e la collaborazione tra programmatori. Un’altra caratteristica storica di COBOL era il formato a colonne del codice sorgente, derivato direttamente dall’uso delle schede perforate. Le prime sei colonne erano dedicate ai numeri di sequenza delle schede, la settima indicava commenti o istruzioni particolari e le colonne successive contenevano il codice vero e proprio. Questo formato, oggi apparentemente anacronistico, rappresentava all’epoca una soluzione pratica per gestire fisicamente i programmi composti da centinaia o migliaia di schede. Durante gli anni Settanta COBOL si consolidò come linguaggio standard dell’informatica gestionale. Gli istituti bancari, le compagnie assicurative e le grandi amministrazioni pubbliche costruirono i propri sistemi informativi basandosi su programmi COBOL eseguiti su mainframe. La ragione di questo successo era duplice: da un lato il linguaggio offriva una straordinaria stabilità, dall’altro permetteva di modellare con precisione le strutture dei dati amministrativi. Le sue definizioni di record e campi erano particolarmente adatte alla rappresentazione di archivi contabili e anagrafici. Con l’avvento dei personal computer e dei linguaggi di programmazione più moderni negli anni Ottanta e Novanta, molti osservatori predissero la scomparsa di COBOL. In realtà accadde il contrario. Le infrastrutture informatiche costruite nei decenni precedenti erano diventate talmente centrali per il funzionamento delle organizzazioni da rendere impraticabile una sostituzione completa. Migliaia di applicazioni continuavano a gestire operazioni quotidiane fondamentali: trasferimenti bancari, calcolo degli interessi, emissione di polizze assicurative, gestione fiscale e previdenziale. Un momento emblematico della persistenza di COBOL fu la crisi informatica legata al passaggio all’anno 2000. Molti programmi scritti decenni prima utilizzavano campi di data a due cifre per rappresentare l’anno, e il rischio di errori nel passaggio dal 1999 al 2000 costrinse aziende e governi a un enorme sforzo di revisione del codice. In quel periodo il linguaggio tornò al centro dell’attenzione mondiale e migliaia di programmatori COBOL vennero richiamati o formati per aggiornare sistemi critici. L’episodio dimostrò quanto profondamente questo linguaggio fosse radicato nell’infrastruttura informatica globale. Ancora oggi una parte significativa delle transazioni finanziarie internazionali viene elaborata da sistemi scritti in COBOL. I mainframe continuano a eseguire applicazioni sviluppate decenni fa, spesso integrate con tecnologie più recenti attraverso interfacce e servizi. In molte banche il sistema centrale che gestisce conti correnti, movimenti e registrazioni contabili è ancora basato su programmi COBOL estremamente affidabili. Questi sistemi sono stati migliorati e aggiornati nel tempo, ma la logica fondamentale rimane quella originaria. L’evoluzione del linguaggio non si è comunque fermata. Gli standard più recenti hanno introdotto funzionalità orientate agli oggetti, supporto per ambienti distribuiti e integrazione con linguaggi moderni. Compilatori contemporanei permettono di eseguire codice COBOL su piattaforme diverse dai tradizionali mainframe, inclusi server Linux e infrastrutture cloud. Questa capacità di adattamento ha contribuito a prolungarne la vita operativa, consentendo alle organizzazioni di mantenere il patrimonio software esistente senza rinunciare all’innovazione tecnologica. Dal punto di vista storico, COBOL rappresenta un caso unico nell’evoluzione dei linguaggi di programmazione. Non è stato progettato per la sperimentazione accademica né per l’ottimizzazione algoritmica, ma per la gestione concreta delle attività economiche. Il suo successo dimostra che, nel mondo dell’informatica, la longevità di una tecnologia dipende spesso più dall’affidabilità e dalla stabilità che dalla modernità della sua sintassi. Per milioni di utenti che ogni giorno effettuano pagamenti, ricevono stipendi o utilizzano servizi bancari digitali, COBOL rimane una presenza invisibile ma fondamentale. È il linguaggio che ha contribuito a costruire l’infrastruttura amministrativa dell’era digitale e che continua, silenziosamente, a sostenerla.
L' Alchimista ©