Додому Ultime notizie e articoli COBOL: il linguaggio di programmazione che non morirà

COBOL: il linguaggio di programmazione che non morirà

La pandemia di Covid-19 ha messo in luce una crisi silenziosa delle infrastrutture americane: gli stati si affidavano a sistemi COBOL (Common Business-Oriented Language) vecchi di 60 anni per i sussidi di disoccupazione, e pochi sviluppatori sapevano come risolverli. Questa non è solo una stranezza storica; le inefficienze nel COBOL costano all’economia statunitense circa 105 miliardi di dollari nel solo 2020. Nonostante ciò, COBOL persiste, alimentando ogni giorno qualsiasi cosa, dai registri dei veicoli a motore alle transazioni finanziarie per trilioni di dollari.

Le origini di una lingua ubiqua

COBOL è nato nel 1959 da un comitato che cercava di risolvere i costi elevati e la complessità della programmazione iniziale. L’obiettivo era un linguaggio che chiunque potesse capire, anche i non programmatori. Il Dipartimento della Difesa degli Stati Uniti abbracciò rapidamente il progetto, incaricando i compilatori COBOL in contratti federali, garantendone il dominio durante la Guerra Fredda.

Il successo di COBOL risiede nella sua indipendenza dalle macchine e nella rapida proliferazione. Il suo design era volutamente semplice, utilizzava un inglese semplice e centinaia di parole come “è” e “allora”, con l’obiettivo di un codice autodocumentato. Tuttavia, questa leggibilità si è dissolta nei programmi di grandi dimensioni, portando al famigerato “codice spaghetti” a causa dell’istruzione incondizionata GO TO.

Perché COBOL rimane essenziale

Nonostante le critiche di scienziati informatici come Edsger Dijkstra, che ne definì l’uso un “reato penale”, COBOL prosperò. La sua forza risiede nella precisione per le applicazioni finanziarie, utilizzando l’aritmetica in virgola fissa anziché in virgola mobile, che lo rende ideale per gestire in modo accurato grandi somme.

I difetti della lingua furono riconosciuti presto; il designer Jean Sammet ha ammesso che un errore chiave è stata la mancanza di “parametrizzazione”, ovvero fare in modo che le modifiche in una parte di un programma influenzino l’intero sistema. Questa complessità rende gli aggiornamenti moderni eccezionalmente difficili, come si vede nelle lotte del New Jersey con il suo sistema di disoccupazione.

Il futuro di COBOL: intelligenza artificiale e sfide di conversione

Oggi aziende come IBM offrono strumenti di conversione basati sull’intelligenza artificiale, promettendo di riscrivere i sistemi COBOL in linguaggi moderni. Tuttavia, questi sforzi spesso danno come risultato “JOBOL”, un ibrido confuso che mantiene la struttura COBOL ma perde la sua leggibilità. La semplice sostituzione di COBOL con Java non risolve i problemi sottostanti.

La tenacia di COBOL è un avvertimento: ciò che sembra efficiente sulla carta può diventare una responsabilità pericolosa nel tempo. Nonostante i suoi limiti, il linguaggio rimane profondamente radicato nelle infrastrutture critiche, e rimuoverlo si sta rivelando molto più difficile di quanto si prevedesse.

Exit mobile version