UCSD Pascal

UCSD Pascal é un dialecto da linguaxe de programación Pascal desenvolvida polo The Institute for Information Systems («Instituto de Sistemas de Información») da Universidade de California, San Diego (UCSD) e publicada en 1978.

 UCSD Pascal e P-System 
A linguaxe Pascal foi desenvolvida por Niklaus Wirth e publicada en 1970. Era unha linguaxe compilada e, como tal, cada microprocesador requiría un compilador dedicado, xa que a linguaxe máquina variaba dunha CPU a outra: así naceron versións para o MOS 6502, Zilog Z80, Intel 8080, etc.

Así naceu a idea de crear un sistema de software baseado nunha máquina virtual que puidese executar o bytecode xerado, chamado P-Code. Deste xeito, podíase distribuír unha única versión do programa compilado, utilizable en todos os sistemas para os que a máquina virtual estivese dispoñible: só era necesario escribir a máquina virtual para a CPU na que se ía executar, para transformar o P-Code na súa propia linguaxe máquina. O proxecto foi desenvolvido inicialmente polo grupo de Wirth e despois levouse a cabo no Instituto de Sistemas de Información da Universidade de California, onde tiñan un PDP-11 no que executaban Pascal, pero tamén estaban a chegar outros ordenadores: cada ordenador tería hardware diferente e cada un tería que ter o seu propio compilador.

Non obstante, na Universidade de California foron máis alá, estendendo o concepto a todo o sistema operativo e creando o UCSD P-System, un sistema baseado en máquinas virtuais que interpretaban o bytecode xerado polos compiladores de UCSD. A linguaxe máis popular no UCSD P-System foi UCSD Pascal, porque o propio P-System estaba escrito en UCSD Pascal.

A versión máis coñecida de UCSD Pascal foi Apple Pascal, desenvolvida por Apple para os seus ordenadores persoais Apple II e lanzada a partir de 1979.

 Rendemento 
En comparación cos programas compilados, un programa escrito en bytecode e logo interpretado en tempo de execución era máis lento, pero tiña a vantaxe de ser máis compacto, xa que todo o necesario para a súa execución estaba contido na máquina virtual subxacente, o que era unha vantaxe dado o hardware informático limitado da época. O concepto foi adoptado posteriormente por algunhas linguaxes modernas, como Java, onde un único código fonte pode executarse en todas as plataformas de hardware para as que está dispoñible a máquina virtual correspondente.

 Notas 

 Véxase tamén 

 Ligazóns externas 
  (O paquete ucsd-psystem-vm é unha máquina virtual portátil para o UCSD P-System.)


Categoría:Linguaxes compiladas
Categoría:Sistemas operativos