En programación de computadoras , Franz Lisp es un sistema de lenguaje de programación Lisp descontinuado escrito en la Universidad de California, Berkeley (UC Berkeley, UCB) por el profesor Richard Fateman y varios estudiantes, basado principalmente en Maclisp y distribuido con Berkeley Software Distribution (BSD) para la minicomputadora VAX de Digital Equipment Corporation (DEC) . [1] Aprovechando la popularidad del paquete BSD, Franz Lisp fue probablemente el sistema Lisp más ampliamente distribuido y utilizado de las décadas de 1970 y 1980. [2]
Paradigmas | Multi-paradigma : funcional , procedimental , reflexivo , meta |
---|---|
Familia | Ceceo |
Diseñada por | Richard Fateman , John Foderaro, Kevin Layer, Keith Sklower |
Desarrollador | Universidad de California, Berkeley |
Apareció por primera vez | 1980 |
Lanzamiento final | Final / 1988 |
Disciplina de mecanografía | Dinámico , fuerte |
Alcance | Estático, léxico |
Lenguaje de implementación | C , Franz Lisp |
Plataforma | VAX , 68000 |
SO | VMS , Unix , similar a Unix , Eunice , SunOS |
Licencia | Propietario , software gratuito |
Influenciado por | |
Lisp , Maclisp , Lisp común | |
Influenciado | |
Allegro Common Lisp |
El nombre es un juego de palabras con el compositor y pianista Franz Liszt .
Fue escrito específicamente para ser un anfitrión para ejecutar el sistema de álgebra computacional Macsyma en VAX. El proyecto comenzó a fines de 1978, poco después de que UC Berkeley recibiera su primer VAX 11/780 (llamado Ernie CoVax, en honor a Ernie Kovacs , el primero de muchos sistemas con juegos de palabras en UCB). Franz Lisp estaba disponible de forma gratuita para sitios educativos y también se distribuyó en Eunice , un emulador de Berkeley Unix que se ejecutaba en VAX VMS .
Historia
En el momento de la creación de Franz Lisp, el sistema de álgebra computacional Macsyma se ejecutaba principalmente en un DEC PDP-10 . El espacio de direcciones limitado de esta computadora causó dificultades. Las soluciones intentadas incluyeron puertos de Maclisp a máquinas Multics o Lisp , pero incluso si tenían éxito, solo serían soluciones para el Instituto de Tecnología de Massachusetts (MIT), ya que estas máquinas eran costosas y poco comunes. Franz Lisp fue el primer ejemplo de un marco en el que se podían ejecutar grandes programas Lisp fuera del entorno de las máquinas Lisp; Macsyma se consideró entonces un programa muy grande. Después de ser portado a Franz Lisp, Macsyma se distribuyó a unos 50 sitios bajo una licencia restringida por el interés del MIT en hacer que Macsyma sea propietario . El VAX Macsyma que se ejecutaba en Franz Lisp se llamaba Vaxima. Cuando Symbolics Inc., compró los derechos comerciales de Macsyma al MIT para venderlos junto con sus máquinas Lisp, finalmente se vio obligada a vender Macsyma también en computadoras DEC VAX y Sun Microsystems , pagando regalías a la Universidad de California por el uso de Franz Lisp. .
Otras implementaciones Lisp para VAX fueron NIL (nunca completamente funcional) del MIT , Lisp estándar portátil de la Universidad de Utah , VAX Lisp de DEC, Interlisp -VAX de Xerox y Le Lisp .
En 1982, se inició la adaptación de Franz Lisp al procesador Motorola 68000 . En particular, se trasladó a un prototipo Sun-1 fabricado por Sun Microsystems , que ejecutaba una variante de Berkeley Software Distribution (BSD) Unix llamada SunOS . En 1986, en la Universidad de Purdue , Franz Lisp fue trasladado a la plataforma CCI Power 6/32 , cuyo nombre en código es Tahoe .
Los principales contribuyentes de Franz Lisp en UC Berkeley fueron John K. Foderaro, Keith Sklower y Kevin Layer.
Se formó una compañía para brindar apoyo a Franz Lisp llamada Franz Inc., por los fundadores Richard Fateman , John Foderaro, Fritz Kunze, Kevin Layer y Keith Sklower, todos asociados con UC Berkeley. Después de eso, el desarrollo y la investigación de Franz Lisp continuaron durante algunos años, pero la aceptación de Common Lisp redujo en gran medida la necesidad de Franz Lisp. El primer producto de Franz Inc. fue Franz Lisp que se ejecutaba en varias estaciones de trabajo basadas en Motorola 68000 . Incluso se realizó una adaptación de Franz Lisp a VAX VMS para el Laboratorio Nacional Lawrence Berkeley . Sin embargo, casi inmediatamente Franz Inc. comenzó a trabajar en su implementación de Common Lisp, Allegro Common Lisp .
Características
El intérprete de Franz Lisp fue escrito en C y Franz Lisp. Se arrancó utilizando únicamente el compilador de C. El compilador de Franz Lisp, escrito íntegramente en Franz Lisp, se llamaba Liszt, completando el juego de palabras con el nombre del compositor Franz Liszt .
Algunas características notables de Franz Lisp fueron matrices en Lisp intercambiables con matrices en Fortran y una interfaz de función externa (FFI) que permitía la interoperación con otros lenguajes a nivel binario. Muchos de los métodos de implementación se tomaron prestados de Maclisp: organización de la memoria bibop (gran bolsa de páginas), pequeños enteros representados de forma única por punteros a valores fijos en campos y aritmética rápida.
Aplicaciones importantes
- Franz Lisp se utilizó como lenguaje de ejemplo en la primera edición de Lispcraft de Robert Wilensky .
- Una implementación de OPS5 por DEC en Franz Lisp se utilizó como base para un sistema basado en reglas para configurar los pedidos del sistema informático VAX-11 y fue importante para las ventas de DEC de estas computadoras.
- Argot: un simulador de circuito utilizado para diseñar y probar el microprocesador RISC-I de computadora con conjunto de instrucciones reducido
- Como derivado: Cadence Design Systems Skill lenguaje de programación
Ver también
- PC-LISP es una implementación de Franz Lisp para el sistema operativo DOS que todavía se ejecuta en emuladores y Microsoft Windows en la actualidad.
Referencias
- ^ "Historia de Franz Inc" . Franz Inc . Consultado el 23 de diciembre de 2018 .
- ^ Gabriel, Richard P. (mayo de 1985). Desempeño y evaluación de sistemas Lisp (PDF) . Cambridge, Massachusetts : MIT Press ; Serie de sistemas informáticos. pag. 60, 294. ISBN 0-262-07093-6. LCCN 85-15161 .
Se convirtió en uno de los dialectos Lisp más comúnmente disponibles en máquinas Unix.
enlaces externos
- Franz Lisp Opus 38.92 para código fuente VAX
- otros recursos de Franz Lisp
- Franz Lisp en Historia de LISP