In meinem ersten Jahr an der Universität war der erste Programmierkurs, den ich belegte, die Verwendung von SICP (das war 1988). Ich hatte jedoch ein ähnliches Problem wie Sie: Für meinen eigenen Computer (eigentlich einen Commodore Amiga) war zu diesem Zeitpunkt keine Schema-Implementierung verfügbar, nur ein anderer Lisp-Dialekt (ich erinnere mich nicht an seinen Namen).
Angesichts der Flexibilität von Lisp war es jedoch ziemlich einfach, die Schemasyntax zu "emulieren", indem nur die fehlenden Lisp-Makros und -Funktionen in einigen Skripten hinzugefügt wurden. Dies war tatsächlich genug, um alle während des Kurses erforderlichen Übungen aus Kapitel 1 bis 3 durchzuführen (beachten Sie, dass für SICP nicht der vollständige Schemastapel erforderlich ist, sondern nur eine kleine Teilmenge erforderlich ist).
Da Clojure AFAIK ist, ein moderner Lisp-Dialekt, könnten Sie wahrscheinlich etwas Ähnliches tun, wodurch Sie die freie Wahl haben, Dinge entweder in Schema oder Clojure oder in einer Mischung aus beiden zu schreiben.
Natürlich ist es auch möglich, die Übungen direkt in Clojure zu lösen, beide Sprachen sind sehr ähnlich. Noch wichtiger ist, dass es bei SICP nicht um die Programmiersprachen-Syntax geht , sondern um die richtige Verwendung von Abstraktionen bei der Programmierung (z. B. mit Funktionen, Daten und Objekten). Denken Sie also nicht zu viel über mögliche Syntaxprobleme nach, diese stehen nicht im Mittelpunkt dieses Buches und sind höchstwahrscheinlich von geringer Bedeutung.
recur
nur Griffe Schwanz Rekursion , nicht allgemeine Anrufe) und 2. das Fehlen voncall-with-current-continuation
denen für Kapitel benötigt wird 4.