¿Qué tiene de bueno SICP?

SICP no se ha utilizado en MIT desde 1960. Los programas en SICP están escritos en Scheme; ese idioma apareció por primera vez en 1975.

La grandeza del SICP parece estar en sus conjuntos de problemas. Muy pocos de ellos son problemas de “conectar y cerrar” y muchos de ellos tratan un problema difícil (matemático o informático), es decir, la función de Ackermann y el problema de las ocho reinas. Los problemas también son grandes porque muchos de ellos contienen ejemplos de programas escritos incorrectamente y le piden al lector que identifique el error o lo corrija.

Otro gran libro cuyos programas están escritos en Scheme es Scheme and the Art of Programming de George Springer y Daniel P. Friedman; ese libro está muy subestimado. Contiene muchos más programas escritos usando más de las “campanas y silbatos” que ofrece el esquema y cubre (algunos) temas tratados superficialmente en el SICP , como las continuaciones y la entrada / salida de archivos. Si SICP es demasiado para ti, te recomiendo probar Scheme and the Art of Programming . Es mucho más útil sostener ese SICP al proporcionar el código del Esquema para casi todos los programas del libro, pero también al señalar y discutir (algunas) cosas que no se mencionan explícitamente en el SICP . SICP todavía mantiene una buena cantidad de manos, pero definitivamente no hasta el punto de que le quita la diversión de trabajar los ejercicios.

SICP es uno de los primeros libros introductorios a la informática. Fue utilizado por el MIT desde 1960. Este libro presenta muchos de los conceptos básicos que los informáticos y programadores deberían conocer incluso hoy: datos y procedimientos, abstracción, noción de estado, compiladores e intérpretes …

No es un libro que le enseñe programación o cómo resolver problemas informáticos particulares, de hecho; Es por eso que hay tantas opiniones divergentes sobre este libro, y muchos estudiantes cuestionan su valor.

Recomiendo este libro a cualquiera que esté remotamente interesado en cómo y por qué de computabilidad y programación, es decir, no solo desde un punto de vista práctico. Como dice su prefacio, “la informática no es una ciencia, y no se trata de computadoras”.