stringtranslate.com

CORAL

CORAL , abreviatura de Computer On-line Real-time Applications Language, es un lenguaje de programación desarrollado originalmente en 1964 en el Royal Radar Establishment (RRE), Malvern, Worcestershire , en el Reino Unido. [2] La R originalmente significaba "radar", no "tiempo real". [3] Fue influenciado principalmente por JOVIAL y, por lo tanto , por ALGOL , pero no es un subconjunto de ninguno de ellos.

La versión más conocida, CORAL 66 , fue desarrollada posteriormente por IF Currie y M. Griffiths bajo los auspicios del Comité Interinstitucional para Aplicaciones Informáticas (IECCA). Su definición oficial, editada por Woodward , Wetherall y Gorman, se publicó por primera vez en 1970. [4]

En 1971, el Ministerio de Defensa seleccionó CORAL como lenguaje para futuras aplicaciones militares y, para respaldarlo, se introdujo un programa de estandarización para garantizar que los compiladores CORAL cumplieran con las especificaciones. Este proceso fue adoptado posteriormente por el Departamento de Defensa de los EE. UU. al definir Ada .

Descripción general

Coral 66 es un lenguaje de programación de propósito general basado en ALGOL 60 , con algunas características de Coral 64, JOVIAL y Fortran . Incluye tipos de registros estructurados (como en Pascal ) y admite el empaquetamiento de datos en un almacenamiento limitado (también como en Pascal). Al igual que Edinburgh IMP, permite el lenguaje ensamblador en línea (incrustado) y también ofrece una buena comprobación y diagnóstico en tiempo de ejecución . Está diseñado para aplicaciones de computación en tiempo real y sistemas integrados , y para su uso en computadoras con capacidad de procesamiento limitada, incluidas aquellas limitadas a aritmética de punto fijo y aquellas sin soporte para la asignación de almacenamiento dinámico.

El lenguaje era un estándar interservicios para la programación militar británica, [5] y también fue ampliamente adoptado para fines civiles en la industria británica de control y automatización. Se utilizó para escribir software para las computadoras Ferranti [6] y General Electric Company (GEC) desde 1971 en adelante. También existen implementaciones para las plataformas Interdata 8/32, PDP-11 , VAX y Alpha y los servidores HPE Integrity ; para Honeywell y para Computer Technology Limited (CTL, más tarde ITL) Modular-1 ; [7] y para SPARC con Solaris e Intel con Linux .

El 26 de marzo de 1976, la reina Isabel II envió el primer correo electrónico de un jefe de estado desde el Royal Signals and Radar Establishment a través de ARPANET. El mensaje decía: "Este mensaje a todos los usuarios de ARPANET anuncia la disponibilidad en ARPANET del compilador Coral 66 proporcionado por el ordenador GEC 4080 en el Royal Signals and Radar Establishment, Malvern, Inglaterra, ... Coral 66 es el lenguaje estándar de alto nivel en tiempo real adoptado por el Ministerio de Defensa ". [8] [9]

Como Coral estaba destinado a una variedad de trabajos en tiempo real, en lugar de procesamiento general de datos de oficina, no había un equivalente estandarizado a una biblioteca stdio . IECCA recomendó un paquete primitivo de entrada/salida (E/S) para acompañar a cualquier compilador (en un documento titulado Entrada/Salida de datos de caracteres en los programas de utilidad Coral 66 ). La mayoría de los implementadores evitaron esto produciendo interfaces Coral para las bibliotecas existentes de Fortran y, más tarde, de C.

La contribución más significativa de CORAL a la informática puede haber sido la aplicación de controles de calidad en compiladores comerciales . [7] Para que un compilador CORAL fuera aprobado por IECCA y, por lo tanto, se pudiera comercializar como un compilador CORAL 66, el compilador candidato tenía que compilar y ejecutar un conjunto estándar de 25 programas de prueba y 6 programas de referencia. El proceso era parte del proceso de aprobación de la Norma Británica (BS) 5905. Esta metodología fue observada y adaptada más tarde por el Departamento de Defensa de los Estados Unidos para la certificación de compiladores Ada .

Se ha recuperado el código fuente de un compilador Coral 66 (escrito en BCPL ) y se ha escaneado el documento de Definición Oficial de Coral 66 de Her Majesty's Stationery Office (HMSO); la oficina de patentes del Ministerio de Defensa ha emitido una licencia al proyecto Edinburgh Computer History para permitirles poner en línea tanto el código como la referencia del lenguaje para uso no comercial.

Variantes

Una variante de Coral 66 llamada PO-CORAL fue desarrollada a fines de la década de 1970 y principios de la de 1980 por la Oficina General de Correos (GPO) británica, junto con GEC , STC y Plessey , para su uso en las computadoras de control de la central telefónica digital System X. Posteriormente, se le cambió el nombre a BT-CORAL cuando British Telecom se separó de la Oficina de Correos. Las características únicas de este lenguaje fueron el enfoque en la ejecución en tiempo real, el procesamiento de mensajes, los límites en la ejecución de declaraciones entre la espera de entrada y la prohibición de la recursión para eliminar la necesidad de una pila . [ cita requerida ]

Referencias

  1. ^ "Obtenga ventajas con CORAL, CORAL+ y Context" (PDF) . DXC Technology . Septiembre de 2017. Archivado (PDF) del original el 23 de enero de 2021 . Consultado el 29 de diciembre de 2021 .
  2. ^ FM1600B Microcircuit Computer Ferranti Digital Systems (PDF) . Bracknell, Berkshire, Reino Unido: Ferranti Limited , Departamento de Sistemas Digitales. Octubre de 1968 [septiembre de 1968]. Lista DSD 68/6. Archivado (PDF) del original el 19 de mayo de 2020 . Consultado el 19 de mayo de 2020 .
  3. ^ Gough, Jack (1993). Observando los cielos: una historia del radar terrestre para la defensa aérea del Reino Unido por parte de la Real Fuerza Aérea de 1946 a 1975. HMSO. p. 264. ISBN 978-0-11-772723-6.
  4. ^ Woodward, Philip M. (1970). Definición oficial de CORAL 66. Her Majesty's Stationery Office (HMSO). págs. vii+58. ISBN 0114702217– vía Internet Archive .
  5. ^ "Coral 66 - Manual de referencia del lenguaje - Manual - Historia de la computación". www.computinghistory.org.uk . Archivado desde el original el 31 de julio de 2023 . Consultado el 31 de julio de 2023 .
  6. ^ Gorman, B (junio de 1978). El compilador Coral 66 para el ordenador Ferranti ARGUS 500 (informe). Royal Signals and Radar Establishment. Nota técnica 799. Archivado desde el original el 17 de marzo de 2021. Consultado el 17 de enero de 2018 .
  7. ^ ab "El lenguaje lúcido puede ayudar a las computadoras europeas". New Scientist . 30 de noviembre de 1972. p. 513 . Consultado el 8 de abril de 2019 .
  8. ^ Metz, Cade (25 de diciembre de 2012). «Cómo la reina de Inglaterra llegó antes que todos a Internet». Wired . ISSN  1059-1028 . Consultado el 9 de enero de 2020 .
  9. ^ Left, Sarah (13 de marzo de 2002). «Cronología de correo electrónico». The Guardian . ISSN  0261-3077 . Consultado el 9 de enero de 2020 .

Enlaces externos