I calcolatori da tavolo furono macchine molto interessanti e caratteristiche del proprio periodo, nonché il primo esempio di informatica capace di uscire dai laboratori di grandi aziende e centri di ricerca e arrivare sul tavolo di utenti comuni.

Non fu certamente la rivoluzione che noi oggi ricordiamo e ringraziamo per averci dato un computer per ogni scrivania, quella che accadde tra metà anni ‘70 e metà anni ‘80 con gli home computer, i PC IBM e i Macintosh, ma fu una piccola rivoluzione che rese desiderabile avere un calcolatore per molte persone, probabilmente aprendo la strada, commercialmente e anche tecnicamente, alla successiva grande rivoluzione.

Tuttavia, noto, nessuno ha proposto una classificazione delle caratteristiche fondamentali dei calcolatori da tavolo, se non per qualche utente dei newsgroup in modo molto parziale. Mi permetto quindi di farla io, questa proposta.

Prima, un chiarimento terminologico

In italiano…

In lingua italiana tali macchine sono chiamane quasi all’unanimità delle varie fonti “calcolatori da tavolo”, con qualche variante quale “calcolatore da scrivania” o, molto rara e recente, “computer da tavolo”.

Qualcuno ha poi usato questo termine anche con l’affermazione degli home computer, ma pare una minoranza, forse legata al mondo ingegneristico che ha per anni continuato a usare anche i moderni PC in modo concettualmente simile ai calcolatori da tavolo, come leggiamo ad esempio nel “Notiziario dell’ENEA.: Energia e innovazione - Volume 32” a pagina 51, che dichiara che “Oggi il PC è usato dagli ingegneri come un calcolatore da tavolo ad alte prestazioni dotato di qualche capacità di elaborazione di testi”, tutto ciò nel 1986…

E in inglese…

In lingua inglese, invece, esistono due termini: il primo, più diffuso fino a metà anni ‘70, è “desktop computer” mentre dopo acquisì buona popolarità “programmable calculator”, usato da HP per vendere i propri calcolatori da tavolo. È bene comunque ricordare che per anni le calcolatrici programmabili, anche quelle da taschino divenute comuni dopo la fine dei calcolatori da tavolo, sono state ritenute le “sorelle minori” dei grandi computer e trattate ampiamente insieme ad essi nella letteratura: era quindi normalissimo per un appassionato comperare una calcolatrice programmabile per entrare nel mondo informatico, così come d’altronde era normalissimo riferirsi, nei primi anni ‘70, a dei “calculator” come “nicely designed stored program computer”, come fa il Bell-Newell con la Programma 101 e che, più si va indietro nel tempo, più le “programmable calculator” sono considerate l’estremo inferiore del mondo informatico e non semplici calcolatrici “potenziate”.

Una nota storico/architetturale…

Alla fine, come diceva HP in una pubblicità per l’HP-65:

“È una calcolatrice o un computer? […] Nella classica definizione di computer, definita da Babbage, l’HP-65 è un computer. L’HP-65 ha salti condizionati e incondizionati, spazio per i dati e una memoria per i programmi. Per gli standard odierni è nota sia come computer che come calcolatrice, a seconda dell’uso che se ne fa.

Tutto sommato, hanno ragione. La pubblicità andava avanti facendo notare che, per l’uso dell’epoca, hanno scelto di venderla come calcolatrice, dato che nel 1975 i computer erano quasi tutti in grado di effettuare calcoli binari e lavorare con dati alfanumerici.

Appena dieci anni prima così non era e, per tanti, l’idea di un calcolatore numerico aveva una certa attrattività. È infatti abbastanza diffuso vedere fonti che usavano i calcolatori da tavolo come computer definirli tali, mentre chi si limitava ad automatizzare lavori semplici li definiva solitamente calcolatrici.

C'è da dire, comunque, che chi studia le “programmable calculator” raramente si interessa a questo periodo, menzionandolo brevemente per il ruolo che certamente ha avuto nello svilupparle ma ritenendo i calcolatori da tavolo comunque computer, anche se molto limitati. Qui trovate un esempio, che vi consiglio di leggere se interessati alla storia delle calcolatrici programmabili.

Conclusioni

In lingua italiana, invece, il termine “calcolatrice programmabile” nasce essenzialmente con le calcolatrici da taschino, nate dopo la fine dei calcolatori da tavolo e mentre questi ultimi evolvevano in mini/microcomputer programmabili, solitamente in BASIC, ed è quindi storicamente impreciso riferirsi a macchine come la Programma 101 o l’HP 9100A/B come “calcolatrici programmabili”, anche se non erroneo nel momento in cui si riconosce dignità di calcolatore ad esse.

Più in generale, anche in italiano fu intorno a fine anni ‘50 che la divisione terminologica tra “calcolatore” e “calcolatrice” si definì: la Divisumma 14 nel 1948 era venduta come “calcolatore meccanico scrivente”, mentre la CEP, primo calcolatore prodotto in Italia, era “Calcolatrice Elettronica Pisana”. Poi, come testimonia la letteratura, si iniziò ad usare la terminologia in modo più simile a come la intendiamo noi oggi, similmente all’inglese dove fino a metà anni ‘50 “calculator” e “computer” erano termini poco distinti, per varie ragioni storiche e sociali (spesso, il computer, era la persona che operava il calculator…)

Criteri proposti

Concluso il capitolo terminologico, vediamo i criteri che propongo.

Un calcolatore si definisce “calcolatore da tavolo” se:

  1. È un calcolatore, rilasciato prima dell’era dell’informatizzazione di massa, che ha reso gli elaboratori ampiamente disponibili al pubblico
  2. Di costo moderato, dimensioni e usabilità ridotte rispetto ai grandi elaboratori
  3. Utilizzabile anche in modalità manuale
  4. Con un set di istruzioni specializzato per la risoluzione di problemi matematici
  5. Che elabora principalmente o esclusivamente dati di tipo numerico
  6. E non necessita di compilatori, interpreti o sistemi operativi per l’uso comune

È un calcolatore, rilasciato prima dell’era dell’informatizzazione di massa, che ha reso gli elaboratori ampiamente disponibili al pubblico

Ovviamente, perché si possa parlare di calcolatore da tavolo, bisogna avere davanti un calcolatore, non una qualsiasi calcolatrice. Non c'è un criterio univoco per effettuare tale distinzione ma, solitamente, si ritiene che il distinguo sia la programmabilità. Non che “programmabile” sia un criterio univoco, lo so bene: nei primi anni dell’informatica i salti condizionati venivano spesso fatti dall’operatore in base ai risultati e quelli incondizionati si ottenevano facendo ruotare continuamente il nastro perforato o le schede perforate, oggi una cosa del genere sarebbe inconcepibile.

È sicuramente necessaria un’analisi storico-informatica per definire cosa significhi “programmabile”, che valuti il set di istruzioni, le capacità della macchina e il suo uso, paragonandolo

Ad esempio, tenderei a considerare programmabile una macchina che può automatizzare numerosi calcoli ma per la quale è possibile determinare se un dato algoritmo termina (cosa incompatibile con una macchina di Turing), mentre se l’automatizzazione è limitata, ad esempio dal numero di passi troppo esiguo, no.

Il criterio temporale, invece, è meramente un corollario di quanto espresso nella sezione sulla terminologia e serve a mettere in chiaro il periodo storico in cui ciò accade.

Di costo moderato, dimensioni e usabilità ridotte rispetto ai grandi elaboratori

Nella lingua italiana degli anni ‘60 “elaboratore” veniva usato per riferirsi ai calcolatori in grado di elaborare vari tipi di dato, come quelli testuali, e molto velocemente. Ovviamente erano macchine molto costose, un PDP-8, minicomputer del 1965, uno dei primi ad avere successo commerciale, costava 150’000$ in valuta odierna, mentre la Programma 101, calcolatore da tavolo del 1965, ne costava 20’000$.

Ma non solo: erano anche difficili da usare. Nei primi anni il PDP-8 si programmava “a mano”, inserendo i bit dalla console di comando e solo nel 1971 vi fu un sistema operativo (per la cronaca, nel 1969 Unix venne sviluppato sul ben meno venduto PDP-7) che permetteva un uso semplificato. Nel mentre se era proprio necessario caricare programmi esterni si andava di nastro perforato.

Un calcolatore da tavolo, invece, si distingue per la semplicità d’uso e offre all’utente un’interfaccia diretta, in piccole dimensioni e a un costo contenuto, almeno rispetto ai grandi elaboratori.

Utilizzabile anche in modalità manuale

Questo criterio viene già fatto notare nel Bell-Newell, scritto durante gli ultimi anni di vita dei calcolatori da tavolo: essi possono essere usati anche in modalità manuale senza una particolare impostazione, per effettuare calcoli in maniera simile ad una calcolatrice, mentre per fare ciò con un elaboratore classico si deve inserire un programma che ne permette tale uso.

È utile notare, comunque, che l’uso come calcolatrice non vuol dire che si possa usare esattamente come una di esse: in alcuni casi era così, come i calcolatori HP a notazione polacca inversa, in altri no: provare a usare la Programma 101 come una semplice calcolatrice, senza riguardi per il suo funzionamento interno, non avrebbe portato a chissà quale risultato…

Corollario della limitata automatizzazione

Come corollario, non determinante ma utile da ricordare, solitamente questi calcolatori non sono pensati per una grande automatizzazione, per quanto possano teoricamente raggiungerla, dato che sarebbe scomodo.

Ciò è vero soprattutto per i calcolatori da tavolo di prima generazione (P101, P102 e P203 di Olivetti, HP 9100A e B, Wang LOCI-2), che potevano ricevere il proprio programma esclusivamente o quasi da cartolina magnetica o scheda perforata (la P102 e alcune varianti della P203 offrivano la possibilità di immettere istruzioni da porta esterna, così come l’HP 9100A/B permetteva di leggere schede ottiche con un’opportuna apparecchiatura), mentre per il Mathatron, almeno in versione originale, non c'è nemmeno il problema dato che il programma non poteva essere inserito se non dalla tastiera.

Era teoricamente possibile creare programmi da migliaia di passi su questi calcolatori, solo che era scomodo, dato che avrebbe richiesto decine di schede magnetiche/perforate per ottenere il risultato, rendendolo difficilmente praticabile.

Con un set di istruzioni specializzato per la risoluzione di problemi matematici

I set di istruzione degli odierni calcolatori, e degli elaboratori dell’epoca, erano largamente logici e ragionavano su bit e byte: il citato PDP-8, ad esempio, aveva appena sei istruzioni: AND, TAD, ISZ, DCA, JMS e JMP: una è un’operazione logica, due manipolano registri, una salva l’accumulatore e due son salti.

I calcolatori da tavolo, d’altra parte, hanno (oltre ai salti necessari a renderli calcolatori) operazioni tipicamente matematiche: addizione, sottrazione, divisione, moltiplicazione, magari radice quadrata e logaritmo e via discorrendo. In linea di massima si potrebbero sviluppare programmi di ogni tipo sulla gran parte dei calcolatori da tavolo, ma tale set renderebbe tale sviluppo una forma di masochismo molto sofisticata.

Che elabora principalmente o esclusivamente dati di tipo numerico

Il principale focus di un calcolatore da tavolo dev’essere l’elaborazione di dati numerici, non di bit, byte o parole. Chiaramente, nulla vieta che un calcolatore da tavolo abbia una qualche forma di supporto ai caratteri, d’altronde l’uso come macchina contabile rende desiderabile avere alcuni elementi alfanumerici per scopi descrittivi, ma il sistema dev’essere ideato e utilizzato principalmente per elaborazioni numeriche.

E non necessita di compilatori, sistemi operativi o interpeti per l’uso comune

Il calcolatore da tavolo si rapporta con l’utente direttamente, solitamente tramite una tastiera numerica simile a quella delle calcolatrici, almeno in via principale.

Non vi è dunque la necessità di utilizzare compilatori, interpreti o sistemi operativi, che infatti sono tipicamente non sviluppati per tali piattaforme (per quanto, in linea di massima e con numerose controindicazioni, non dovrebbe essere impossibile farlo, può essere un buon esercizio in futilità).

Si tratta, insomma, di una piattaforma pronta all’uso, cosa comunque largamente derivante dai due precedenti punti.

Alcuni commenti su alcune altre proposte.

A mio parere questa è la prima classificazione storica realizzata con metodo, poiché ad oggi molte classificazioni sono fatte alla bell’e meglio, se va bene, o direttamente non fatte.

Molti, infatti, sottovalutano la storia di questi calcolatori e l’interazione con la storia dell’informatica dell’epoca, quindi si limitano a citare uno o due calcolatori del genere, senza contestualizzare il periodo storico.

Parimenti, molte classificazioni vengono da musei delle calcolatrici, che trovando interesse nell’esporre queste macchine, tendono a sottovalutare il lato informatico, ad esempio ho letto sulle pagine di un museo che la differenza tra computer e calcolatrice è che il primo è in grado di modificare la sua memoria di lavoro, cosa che in realtà distingue un modello di calcolatore, Von Neumann, da un altro, Harvard.

Purtroppo, spesso, i musei in Europa tendono a sintetizzare (sicuramente non per malafede ma per mancanza di fonti, dato che il calcolatore da tavolo ebbe il boom oltreoceano) tutta questa storia con la “lite” Olivetti/HP, una cosa che certamente non fa onore al contributo della Perottina e delle macchine successive alla storia dell’informatica.

Non pretendo certamente che questa sia la classificazione, anzi, spero che la comunità storico-informatica possa, partendo da questo testo, elaborare una definizione maggiormente accettata.