UCSD Pascal linguaggio di programmazione | |
---|---|
![]() | |
Autore | Università della California, San Diego |
Data di origine | 1978 |
Utilizzo | Generico |
Paradigmi | programmazione strutturata |
Tipizzazione | forte |
Modifica dati su Wikidata ·Manuale |
L'UCSD Pascal è undialetto dellinguaggio di programmazionePascal sviluppato daThe Institute for Information Systems dell'Università della California, San Diego (UCSD) e distribuito nel1978.[1][2]
Il linguaggio Pascal fu sviluppato daNiklaus Wirth e pubblicato nel1970. Era unlinguaggio compilato e come tale per ognimicroprocessore serviva uncompilatore apposito dato che illinguaggio macchina cambiava daCPU aCPU: fu così che nacquero le versioni perMOS 6502,Zilog Z80,Intel 8080 e così via.[3]
Nacque così l'idea di creare un sistema software basato su unamacchina virtuale che potesse eseguire ilbytecode generato, dettoP-Code. In questo modo si sarebbe potuto distribuire una sola versione del programma compilato, utilizzabile su tutti i sistemi per cui era disponibile la macchina virtuale: era solo quest'ultima che doveva essere scritta per la CPU su cui doveva girare, per trasformare il P-Code in linguaggio macchina specifico per essa.[2][3] Il progetto fu elaborato inizialmente dal gruppo di Wirth e poi concretizzato all'Institute for Information Systems dell'Università della California, dove possedevano unPDP-11 su cui facevano girare il Pascal ma stavano arrivando anche altri computer: ogni computer avrebbe avuto un hardware differente ed ognuno avrebbe dovuto avere il suo compilatore.[2]
All'Università della California andarono però oltre, estendendo il concetto all'interosistema operativo e creando l'UCSD P-System, un sistema basato su macchine virtuali che interpretavano il bytecode generato dai compilatori UCSD. Il linguaggio più popolare sull'UCSD P-System fu l'UCSD Pascal, perché il P-System stesso fu scritto in UCSD Pascal.[3]
La versione più nota dell'UCSD Pascal fu l'Apple Pascal, sviluppato daApple per i propripersonal computerApple II e distribuito a partire dal1979.[2]
Rispetto ai programmi compilati, un programma in bytecode e poi interpretato in fase di esecuzione era più lento ma aveva a suo favore il fatto che i programmi erano più compatti, dato che tutto quanto serviva alla loro esecuzione era contenuto nella sottostante macchina virtuale, e questo era un vantaggio per i limitati hardware dei computer dell'epoca. Il concetto è stato poi ripreso da alcuni linguaggi moderni, qualiJava, dove un unico sorgente può girare su tutte le piattaforme hardware per cui è disponibile la corrispondente macchina virtuale.[2]
Controllo di autorità | LCCN(EN) sh85139245 ·GND(DE) 4117271-1 ·J9U(EN, HE) 987007558582705171 |
---|