Concurrent Euclid ( ConEuc ) es un descendiente concurrente del lenguaje de programación Euclid diseñado por James Cordy y Ric Holt , entonces en la Universidad de Toronto , en 1980. ConEuc fue diseñado para software de sistema concurrente, de alto rendimiento y altamente confiable , como sistemas operativos , compiladores y sistemas de microprocesadores integrados. El sistema operativo TUNIS , una variante de Unix , se implementó completamente en Concurrent Euclid. ConEuc amplía un subconjunto central de Euclid con procesos y monitores(según lo especificado por CAR Hoare ), así como las construcciones de lenguaje necesarias para la programación de sistemas, incluida la compilación separada, variables en direcciones absolutas, convertidores de tipo, enteros largos y otras características.
Paradigma | multi-paradigma : estructurado , imperativo , funcional |
---|---|
Diseñada por | James Cordy y Ric Holt |
Desarrollador | James Cordy y Ric Holt |
Apareció por primera vez | 1980 |
Disciplina de mecanografía | fuerte , estático |
SO | Multiplataforma : PDP-11 , VAX-11 , Motorola 68000 , Motorola 6809 |
Influenciado por | |
Euclides , Comunicando Procesos Secuenciales | |
Influenciado | |
Turing Plus |
ConEuc fue implementado por un compilador pequeño (50k bytes), rápido y portátil que se compilaba automáticamente y tenía generadores de código reemplazables. Se desarrollaron generadores de código de alta calidad para varias computadoras, incluidas PDP-11 , VAX-11 , Motorola 68000 y Motorola 6809 , que produjeron un código comparable a los mejores compiladores de C. Los programas de Euclid concurrentes que usaban concurrencia se podían ejecutar en una máquina simple (soportada por un pequeño kernel de lenguaje ensamblador), o en modo simulado como un proceso ordinario que se ejecuta bajo un sistema operativo.
El lenguaje de programación Turing es un descendiente directo de Concurrent Euclid y su variante Turing Plus eventualmente reemplazó a ConEuc en la mayoría de las aplicaciones.
Referencias
- JR Cordy y RC Holt 1980. Especificación de Euclid concurrente. Informes técnicos CSRI-115 (julio de 1980) y CSRI-133 (agosto de 1981), Computer Systems Research Institute, Universidad de Toronto. 54 páginas.
- RC Holt 1982. Euclid concurrente, el sistema Unix y Tunis. Addison-Wesley 1982. 323 páginas.
- RC Holt 1982. Una breve introducción a Concurrent Euclid. ACM SIGPLAN Notices 17, 5 (mayo de 1982), 60-79.
- RC Holt 1982. Tunis: un parecido a Unix escrito en Concurrent Euclid. SIGOPS Operating Systems Review 16, 1 (enero de 1982), 4-5.