stringtranslate.com

IMP de Edimburgo

Edinburgh IMP es un desarrollo de Atlas Autocode , desarrollado inicialmente alrededor de 1966-1969 en la Universidad de Edimburgo , Escocia . Es un lenguaje de programación de propósito general que se utilizó mucho para la programación de sistemas .

Expresivamente, IMP es muy similar a ALGOL e incluye toda la estructura de bloques de estilo ALGOL , palabras reservadas (palabras clave) y tipos de datos como matrices y registros . Agrega a los lenguajes de estilo ALGOL un tipo de cadena (una matriz de caracteres, aunque estos tienen un tamaño predeclarado) y operadores integrados para manipulación de cadenas y manejo de caracteres. Una diferencia significativa con ALGOL es que IMP no admite parámetros pasados ​​por nombre, aunque sí admite parámetros pasados ​​por referencia.

IMP proporciona un control significativo sobre el mapeo de almacenamiento de datos, además de comandos para direccionar partes de palabras. La mayoría de los compiladores IMP ofrecen comprobaciones de tiempo de ejecución generadas por el compilador y una función de seguimiento de pila (backtrace) de forma predeterminada, incluso en código de producción. IMP permite instrucciones en lenguaje de máquina ensamblador en línea en el código fuente .

La implementación ERCC de IMP para el sistema ICL 4 (conocido como IMP9) ofreció una función de macro basada en sintaxis (diseñada por Alan Freeman) que era similar a las características del compilador ofrecidas por el predecesor de IMP, Atlas Autocode .

Los primeros compiladores IMP se desarrollaron para las computadoras English Electric KDF9 , ICL System 4 , UNIVAC 1108 , IBM System/360 , DEC PDP-9 , DEC PDP-15 y CTL Modular One . Se utilizó IMP para implementar el sistema operativo Sistema de acceso múltiple de Edimburgo (EMAS) y se escribió un compilador para la serie ICL 2900 para permitir la migración de EMAS a esa plataforma . En años posteriores, Peter Robertson desarrolló una versión de IMP llamada IMP77 dentro del departamento de Ciencias de la Computación de Edimburgo, que era un compilador portátil que llevó IMP a aún más plataformas. En 2002, el lenguaje IMP77 fue resucitado por el Proyecto de Historia de la Computación de Edimburgo para hardware Intel x86 con DOS , Windows y Linux , y una vez más lo utilizan los graduados y expatriados de Edimburgo.

Los IMP divergentes e IMP77 se consolidaron posteriormente en un solo idioma con la introducción del estándar IMP80, respaldado por implementaciones del Centro Regional de Computación de Edimburgo. IMP80 también se ha adaptado a varias plataformas, incluida Intel, y se utilizó activamente en la década de 1990.

El IMP de Edimburgo no tiene relación con el lenguaje de programación extensible de sintaxis IMP posterior desarrollado por Edgar T. Irons, para el CDC 6600 , que fue el lenguaje principal utilizado por la Agencia de Seguridad Nacional (NSA) durante muchos años.

Ver también

Fuentes

Referencias