Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

What is the best Scheme implementation for working through SICP?

Tags:

lisp

scheme

sicp

I have been using PLT Scheme, but it has some issues. Does anyone know of a better implementation for working through SICP?

like image 843
Joel McCracken Avatar asked Nov 04 '08 02:11

Joel McCracken


2 Answers

Use Racket (formerly PLT Scheme).

The DrRacket IDE is an excellent starting point for all things Scheme including SICP.

To look up keywords in the documentation, place the cursor on the keyword and press F1. In DrRacket you can now see the images directly in the REPL (the read-eval-print-loop).

SICP Support for DrRacket, by Neil van Dyke.

Update (2016): The new SICP package is at http://pkgs.racket-lang.org/#[sicp] Download it with the Package Manager (in DrRacket) or use raco. Manual

Update2 (2016): Also if you want to try a new implementation of the SICP picture language, then download sicp-pict2.rkt.


Update3 (2020): The sicp-lang package includes an implementation of the sicp language and the sicp picture language.

Documentation: SICP Support for DrRacket
Source Code: sicp-lang on GitHub
Racket Package: sicp-lang package info

Note: The picture language has more features (such as colors and larger sizes) than the picture language described in the book. The source contains examples: https://github.com/sicp-lang/sicp/blob/master/sicp-pict/main.rkt

like image 120
soegaard Avatar answered Sep 21 '22 14:09

soegaard


Use MIT Scheme.

It's recommended by the authors of SICP, and is used at MIT for the 6.001: Structure and Interpretation of Computer Programs course.

like image 41
keparo Avatar answered Sep 21 '22 14:09

keparo