Articulo de referencia

Estructura e interpretación de programas informáticos

Estructura e interpretación de programas informáticos ( SICP ) es un libro de texto de informática escrito porlos profesores del Instituto Tecnológico de Massachusetts (MIT), Ha...

Estructura e interpretación de programas informáticos ( SICP ) es un libro de texto de informática escrito porlos profesores del Instituto Tecnológico de Massachusetts (MIT), Harold Abelson y Gerald Jay Sussman, junto con Julie Sussman. Es conocido como el "Libro del Mago" en la cultura hacker . [ 1 ] Enseña los principios fundamentales de la programación informática , incluyendo la recursión , la abstracción , la modularidad y el diseño e implementación de lenguajes de programación .

MIT Press publicó la primera edición en 1984 y la segunda en 1996. Se utilizó como libro de texto para el curso introductorio de informática del MIT desde 1984 hasta 2007. SICP se centra en descubrir patrones generales para resolver problemas específicos y en construir sistemas de software que utilicen esos patrones. [ 2 ]

MIT Press publicó una versión en JavaScript del libro en 2022. [ 3 ]

Contenido

El libro describe conceptos de informática utilizando Scheme , un dialecto de Lisp . También utiliza una máquina de registros virtuales y un ensamblador para implementar intérpretes y compiladores de Lisp .

Los temas que se tratan en los libros son:

Capítulo 1: Creación de abstracciones con procedimientos

  1. Los elementos de la programación
  2. Procedimientos y los procesos que generan
  3. Formulación de abstracciones mediante procedimientos de orden superior

Capítulo 2: Creación de abstracciones con datos

  1. Introducción a la abstracción de datos
  2. Datos jerárquicos y la propiedad de cierre
  3. Datos simbólicos
  4. Múltiples representaciones para datos abstractos
  5. Sistemas con operaciones genéricas

Capítulo 3: Modularidad, objetos y estado

  1. Asignación y Estado Local
  2. El modelo de evaluación ambiental
  3. Modelado con datos mutables
  4. Concurrencia : El tiempo es esencial
  5. Corrientes

Capítulo 4: Abstracción metalingüística

  1. El Evaluador Metacircular
  2. Variaciones sobre un esquema: evaluación perezosa
  3. Variaciones de un esquema: computación no determinista
  4. Programación lógica

Capítulo 5: Computación con máquinas de registro

  1. Diseño de máquinas de registro
  2. Un simulador de máquina de registros
  3. Asignación de espacio de almacenamiento y recolección de basura
  4. El evaluador de control explícito
  5. Compilación

Personajes

En el libro aparecen varios personajes ficticios con nombres graciosos:

Licencia

El libro está bajo una licencia Creative Commons Atribución-CompartirIgual 4.0 Internacional (CC BY-SA 4.0). [ 4 ]

Trabajos del curso

El libro se utilizó como libro de texto para el antiguo curso introductorio de programación del MIT, 6.001, [ 5 ] desde el otoño de 1984 hasta su último semestre, en el otoño de 2007. [ 6 ] Otras escuelas también utilizaron el libro como libro de texto de sus cursos. [ 7 ]

Recepción

Byte recomendó SICP en 1986 "para programadores profesionales que estén realmente interesados ​​en su profesión". La revista afirmó que el libro no era de fácil lectura, pero que expondría a los programadores experimentados a temas tanto antiguos como nuevos. [ 8 ]

Una reseña de SICP como libro de texto de pregrado realizada por Philip Wadler señaló las debilidades del lenguaje Scheme como lenguaje introductorio para un curso de ciencias de la computación. [ 9 ] Wadler criticó en particular la falta de coincidencia de patrones , que oscurece el razonamiento ecuacional y dificulta la enseñanza de demostraciones; la falta de tipos de datos algebraicos en Scheme y la dependencia excesiva de pares cons tanto para la representación de código como de datos, lo que puede confundir a los estudiantes principiantes; y la elección de la evaluación estricta en lugar de la evaluación perezosa como estrategia de evaluación estándar.

Influencia

SICP ha sido una figura influyente en la enseñanza de la informática, y varios libros posteriores se han inspirado en su estilo.

Véase también

  • Compiladores: Principios, técnicas y herramientas también conocido como El libro del dragón 

Referencias

  1. Raymond, Eric S.; Steele, Guy (1991). El nuevo diccionario del hacker . Internet Archive. Cambridge, Massachusetts: MIT Press. ISBN 978-0-262-68069-1.
  2. Harvey, B (2011), "¿Por qué importa SICP?" , El 150 aniversario del MIT , Boston Globe.
  3. Estructura e interpretación de programas informáticos: Edición JavaScript . MIT Press. 2022. ISBN 9780262543231.
  4. "SICP" . MIT Press. Archivado del original el 26-12-2017 . Consultado el 11-11-2007 ..
  5. "Ingeniería eléctrica e informática; 6.001 Estructura e interpretación de programas informáticos" . OpenCourseWare . MIT. Primavera de 2005. Consultado el 21 de junio de 2020 .
  6. Guy, Donald, "El fin de una era", Admisiones del MIT (comentario de blog), archivado del original el 21/08/2018 , recuperado el 05/08/2008 , Hablé con el profesor Sussman por teléfono... Dijo que en realidad había estado intentando que se reemplazara 6.001 durante los últimos diez años (y leí en alguna parte que el profesor Abelson también estaba detrás del cambio). Entender los principios ya no es esencial para una introducción a la materia. Él ve 6.001 como obsoleto.
  7. "Universidades y colegios que utilizan SICP" . MIT Press. Archivado del original el 23 de abril de 2022. Consultado el 30 de marzo de 2022 .
  8. Kilov, Haim (noviembre de 1986). Byte Magazine Volumen 11 Número 12: Representación del conocimiento . pág. 70. 
  9. Wadler, P (1987-03-01). "Una crítica a Abelson y Sussman o por qué calcular es mejor que planear" . ACM SIGPLAN Notices . 22 (3): 83– 94. doi : 10.1145/24697.24706 . ISSN 0362-1340 . 
  • Sitio web oficial
  • videoclases
  • Libro compilado a partir de código fuente TeX.
  • Estructura e interpretación de programas informáticos. Versión interactiva.