En mi primer año en la universidad, el primer curso de programación que tomé fue usar SICP (eso fue en 1988). Sin embargo, tuve un problema similar como el tuyo: para mi propia computadora (en realidad una Commodore Amiga), no había una implementación de Scheme disponible en ese momento, solo un dialecto Lisp diferente (no recuerdo su nombre).
Sin embargo, dada la flexibilidad de Lisp, era bastante simple "emular" la sintaxis de Scheme simplemente agregando las macros y funciones lisp faltantes en unos pocos scripts. En realidad, esto fue suficiente para implementar todos los ejercicios del capítulo 1 al 3 necesarios durante el curso (tenga en cuenta que SICP en realidad no requiere la pila completa de esquemas, un pequeño subconjunto es todo lo que necesita).
Entonces, dado que Clojure es AFAIK un dialecto Lisp moderno, supongo que podría hacer algo similar, lo que le brinda la opción totalmente libre de escribir cosas en Scheme o Clojure o una mezcla de ambos.
Por supuesto, también será posible resolver los ejercicios directamente en Clojure, ambos idiomas son muy similares. Más importante aún, SICP no se trata de la sintaxis del lenguaje de programación , se trata del uso correcto de las abstracciones en la programación (por ejemplo, con funciones, datos y objetos). Por lo tanto, no piense demasiado en los posibles problemas de sintaxis, estos no están en el centro de atención de este libro y probablemente sean de menor importancia.
recur
solo maneja la recursión de cola , no las llamadas generales) y 2. la falta de lacall-with-current-continuation
cual es necesaria para el capítulo 4.Encontré su pregunta justo después de encontrar este sitio que parece que está en su callejón (aunque puede haberlo encontrado o una alternativa en los meses intermedios): SICP en Clojure
fuente