Interlisp (también escrito con diversas mayúsculas) es un entorno de programación basado en una versión del lenguaje de programación Lisp . El desarrollo de Interlisp comenzó en 1966 en Bolt, Beranek and Newman (renombrada BBN Technologies ) en Cambridge, Massachusetts, con Lisp implementado para la computadora PDP-1 de Digital Equipment Corporation (DEC) por Danny Bobrow y DL Murphy. En 1970, Alice K. Hartley implementó BBN LISP , que se ejecutaba en máquinas PDP-10 con el sistema operativo TENEX (renombrado TOPS-20 ). En 1973, [ 1 ] cuando Danny Bobrow , Warren Teitelman y Ronald Kaplan se trasladaron de BBN al Xerox Palo Alto Research Center ( PARC ), se le cambió el nombre a Interlisp. Interlisp se convirtió en una popular herramienta de desarrollo de Lisp para investigadores de inteligencia artificial (IA) en la Universidad de Stanford y en otros lugares de la comunidad de la Defense Advanced Research Projects Agency ( DARPA ). Interlisp se destacó por integrar herramientas de desarrollo interactivas en un entorno de desarrollo integrado (IDE), como un depurador , una herramienta de corrección automática para errores simples (a través del diseño de software " haz lo que quiero decir" ( DWIM )), [ 2 ] y herramientas de análisis.
Adaptaciones
En Xerox PARC se hizo un primer intento de definir una máquina virtual para facilitar la portabilidad , denominada máquina virtual Interlisp . Sin embargo, no resultó útil como base para la portabilidad.
Peter Deutsch definió un conjunto de instrucciones codificadas en bytes para Interlisp y lo implementó como un emulador de microcódigo para la Xerox Alto . Posteriormente, este se adaptó a una serie de diseños de estaciones de trabajo producidas por Xerox para uso interno y comercial, incluyendo las Xerox 1100 (Dolphin), 1108 (Dandelion), 1109 (la Dandetiger con capacidad de coma flotante), 1186 (Daybreak) y 1132 (Dorado). Las implementaciones de Interlisp para estas se conocían colectivamente como Interlisp-D. Comercialmente, se vendieron como máquinas Lisp y se comercializaron como estaciones de trabajo de IA de Xerox cuando Larry Masinter era el científico jefe de ese grupo. Los mismos diseños, pero con software diferente, también se vendieron con nombres distintos (por ejemplo, al usar el sistema Viewpoint, el 1186 Daybreak se vendía como Xerox 6085). Las versiones de Interlisp-D se denominaban según un tema musical, que terminaba con Koto, Lyric y Medley. Las versiones posteriores incluían una implementación de Common Lisp anterior al Instituto Nacional Estadounidense de Estándares (ANSI) , llamada Xerox Common Lisp. LOOPS, el sistema de objetos para Interlisp-D, se convirtió, junto con el sistema Flavors de Symbolics , en la base del Common Lisp Object System (CLOS).
En 1974, DARPA adjudicó un contrato a la Universidad de California en San Diego (UCSD) para implementar Interlisp en el Burroughs B6700 . La motivación principal fue el mayor espacio de direccionamiento de memoria virtual que ofrecía la arquitectura del B6700 en comparación con el PDP-10. Sin embargo, para cuando se lanzó el software (1975), el espacio de direcciones del PDP-10 se había ampliado, e Interlisp-10 seguía siendo el estándar de la época para la investigación en IA. Los desarrolladores fueron Bill Gord y Stan Sieler, con la guía de Daniel Bobrow y bajo la dirección general del Dr. Ken Bowles . El Interlisp de UCSD incluía un compilador que generaba "código p", el cual podía mezclarse con código LISP estándar durante la interpretación. Este código p parece haber precedido al código p de Pascal de UCSD por uno o dos años.
La versión de Interlisp para PDP-10 se convirtió en Interlisp-10 ; BBN tuvo un proyecto interno para construir Interlisp-Jericho y hubo una adaptación en 1982 para Berkeley Software Distribution (BSD) Unix en VAX por parte de la Universidad de Stanford , el Information Sciences Institute (ISI) y Xerox PARC, llamada Interlisp-VAX . [ 3 ]
En 1981, Warren Teitelman y Larry Masinter publicaron un artículo sobre Interlisp en IEEE Computer que proporcionaba una descripción general del sistema y su filosofía de diseño, estableciendo los arranques utilizados para la plataforma. [ 4 ]
También en 1981, Datasoft lanzó una variante del procesador MOS Technology 6502 , INTER-LISP/65, para las computadoras Atari de 8 bits . Entre 1985 y 1987, un equipo de Fuji Xerox desarrolló una implementación del intérprete de código de bytes microcodificado en lenguaje C y, junto con Xerox AI Systems (XAIS) en Sunnyvale, California , completó la adaptación del entorno y el emulador a la arquitectura SPARC 4 de Sun Microsystems . En 1987, XAIS se escindió en Envos Corporation, que fracasó casi de inmediato.
Cronograma de lanzamiento de Interlisp-D:
- 1983 – Coro
- 1983 – Fuga
- Junio de 1984 – Carol
- Enero de 1985 – Armonía
- 1985 – Intermezzo
- Diciembre de 1985 – Koto, primera versión compatible con la estación de trabajo Xerox 1185/1186, con cierto soporte para Common Lisp.
- Junio de 1987 – Lyric admite Xerox Common Lisp como parte del sistema Lisp estándar.
- Septiembre de 1988 – Medley, para máquinas Xerox 1100 y Sun 3
- Febrero de 1992 – Medley 2.0, incluye CLOS con MOP, se ejecuta en varias máquinas Unix, MS-DOS y la Xerox 1186 [ 5 ]
En 1992, la Asociación para la Maquinaria de Computación (ACM) otorgó un premio al sistema de software al equipo formado por Daniel G. Bobrow , Richard R. Burton, L. Peter Deutsch , Ronald Kaplan , Larry Masinter y Warren Teitelman por su trabajo pionero en Interlisp.
Revitalización
El código fuente de Medley Interlisp y el código fuente del emulador de máquina virtual han sido publicados como código abierto por el Proyecto Medley Interlisp . El sistema funciona en hardware y sistemas operativos modernos.
Véase también
Referencias
- ↑ "Manual de referencia de Interlisp" (PDF) . 1993.
- ^ Teitelman, Warren (abril de 1972). ""Haz lo que quiero decir": el asistente del programador. Computadoras y automatización : 8–11 .
- ↑ Masinter, Larry M. (1981). Interlisp-VAX: Un informe (PDF) (Informe). Universidad de Stanford.
- ↑ Teitelman, Warren; Masinter, Larry M. (abril de 1981). "El entorno de programación Interlisp" (PDF) . IEEE Computer . 14 (4): 25–33 . doi : 10.1109/CM.1981.220410 . S2CID 13447494 .
- ↑ "Preguntas frecuentes sobre Lisp, implementaciones comerciales de Common Lisp" .
Publicaciones
- Warren Teitelman y otros , Manual de referencia de Interlisp (Informe técnico de Xerox, 1974)
- J. Strother Moore , Especificación de la máquina virtual Interlisp (Informe técnico de Xerox, 1976)
- L. Peter Deutsch , Una máquina LISP con programas muy compactos (Tercera Conferencia Conjunta sobre Inteligencia Artificial, 1973).
- Kaisler, SH 1986 Interlisp: el lenguaje y su uso. Wiley-Interscience.
Enlaces externos
- Documentación archivada de Interlisp en bitsavers.org
- LISPF4 es un intérprete de Interlisp escrito originalmente en Fortran por Mats Nordstrom y adaptado a C ( Windows , Mac OS y Linux ) por Blake McBride.
- Documentación de Interlisp en el Museo de Historia de la Computación .
- Debate en el foro de AtariAge sobre INTER-LISP/65
- Entrada de AtariWiki para INTER-LISP/65 archivada el 2 de mayo de 2013 en Wayback Machine.
- Proyecto Medley Interlisp
- Repositorio de código fuente de Medley Interlisp
- Lisp (lenguaje de programación)
- Lenguajes de programación dinámicos
- Lenguajes funcionales
- Familia de lenguajes de programación Lisp
- Sistemas operativos basados en Lisp (lenguaje de programación)
- Lenguajes de programación creados en 1968