LISP es un libro de texto universitario sobre el lenguaje de programación Lisp , escrito por Patrick Henry Winston y Berthold Klaus Paul Horn . Se publicó por primera vez en 1981 y la tercera edición del libro se publicó en 1989. [1] El libro tiene como objetivo presentar el lenguaje de programación Lisp y sus aplicaciones. [2] : Prefacio
Se publicaron tres ediciones en 1981, 1984 y 1989 respectivamente. La primera edición reemplazó la parte 2 de la primera edición de Inteligencia Artificial ( Winston ) e introdujo el uso de Maclisp , junto con un apéndice para los usuarios de Interlisp . [3] La segunda edición introdujo Common Lisp [4] : Prefacio y Flavors . [4] : 239 La tercera edición agregó el Common Lisp Object System , junto con definiciones de procedimientos mejoradas y temas adicionales. [2] : Prefacio [5]
LISP cubre los conceptos básicos del lenguaje utilizando el estándar Common Lisp, incluido el Common Lisp Object System (CLOS). Las aplicaciones se extraen de sistemas expertos, interfaces de lenguaje natural, matemáticas simbólicas, límites de probabilidad, simulación de proyectos y reconocimiento visual de objetos. Se explican los paradigmas de resolución de problemas, incluida la búsqueda, el encadenamiento hacia adelante y la reducción de problemas. Se analizan la propagación de restricciones y el encadenamiento hacia atrás. Otros temas incluyen mapeo, flujos y evaluación retrasada. [2] : Contraportada
En Computers and the Humanities, volumen 17, n.° 1 (1983), Denis L. Baggi revisó la primera edición de LISP. Elogió la organización, la progresión y las implementaciones prácticas de la segunda parte del libro, pero cuestionó el uso de Maclisp para los ejemplos. Se sugirió que el Lisp estándar (creado para el sistema de álgebra computacional Reduce ) [6] era una mejor opción. [7]
Daniel Weinreb revisó la segunda edición de ACM SIGPLAN Lisp Pointers. Observó mejoras significativas en el código de ejemplo, facilitado por el uso de Common Lisp, en lugar de estar limitado al código del mínimo común denominador, impulsado por los diversos dialectos Lisp del pasado. Destacó la calidad del diseño del libro y la presentación del código de ejemplo, diciendo que el texto era claro y estaba bien organizado. Recomendó que los usuarios del libro tengan una base sólida en algún lenguaje de programación, o estén dispuestos a hacer un esfuerzo adicional. Los ejemplos de código se destacaron como la fortaleza del libro, siendo lo suficientemente pequeños para entender, pero lo suficientemente grandes para ilustrar y motivar técnicas importantes en programación simbólica. [8]
En una revisión de Inteligencia Artificial ( Winston ) de Doris Appleby en 1993, se analizó la edición de 1989 de LISP en su función de referencia complementaria. Appleby descubrió que el libro funcionaba mejor como texto cuando se describía una técnica, seguida de un sistema de juguete y luego una aplicación comercial. Se mencionaron como ejemplos el encadenamiento hacia atrás, Zookeeper y MYCIN . Se destacó que el código de muestra proporcionado para sistemas basados en reglas y aprendizaje del espacio de versiones respaldaba bastante bien el texto. [5]
En Paradigms of AI Programming , Peter Norvig sugirió una serie de libros de texto introductorios de Lisp. Se destacó que LISP cubría la mayor parte del terreno en términos de consejos de programación, con la salvedad de que puede ser difícil para principiantes. [9] : xiv Las áreas temáticas citadas incluyeron la coincidencia de patrones, [9] : 168 [9] : 213 programación lógica, [9] : 367 y el desarrollo de intérpretes de Lisp. [9] : 777