1 Introduction
2 Installation
3 Usage
4 History
5 Legal
Version: 1.17

SICP Support for DrRacket

Neil Van Dyke

1 Introduction

NOTE: This package is looking for a volunteer to take over development. The most important need is for someone to work through SICP and fix anything that would be a problem. The second need is to incorporate Soegaard’s code into this package, so that we can avoid confusing install-time error messages. Please contact Neil Van Dyke (neil AT neilvandyke DOT org).

This package implements support in PLT’s DrRacket for Abelson and Sussman’s Structure and Interpretation of Computer Programs (SICP) 2nd Edition textbook, for students who wish to use DrRacket’s tools for the SICP programming assignments.

Note that this package is not a project of the PLT organization, nor of the SICP authors. PLT has a related textbook, How to Design Programs (HtDP), with a different emphasis and a different pedagogic approach. A comparison of the two textbooks is beyond the scope of this document. A 2004 paper by some PLT members, “The Structure and Interpretation of the Computer Science Curriculum” [PDF], provides a PLT perspective on the differences.

The official Web page for this package is: http://www.neilvandyke.org/racket-sicp/

This package also uses Sperber and Soegaard’s Picture Language implementation by require-ing from PLaneT. (We have tentative plans to merge the two, time permitting.)

2 Installation

Installing this package consists simply of require-ing it from the Internet-based PLaneT software repository, and then restarting DrRacket. The steps in detail for how a beginner may do this through DrRacket are:

3 Usage

There are two separate ways to specify use of the SICP Language in DrRacket:

This package uses the soegaard/sicp PLaneT package by Mike Sperber and Jens Axel Soegaard to implement the SICP Picture Language. Note that you should not use the require form shown in the documentation for that package – this package provides the SICP Picture Language implicitly.

4 History

Note that PLaneT package version numbers of neil/sicp are used, rather than maintaning separate version numbers.

5 Legal

Copyright (c) 2009–2011 Neil Van Dyke. This program is Free Software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 3 of the License (LGPL 3), or (at your option) any later version. This program is distributed in the hope that it will be useful, but without any warranty; without even the implied warranty of merchantability or fitness for a particular purpose. See http://www.gnu.org/licenses/ for details.