Getting Started With DrScheme

DrScheme is a tool that helps you write, debug, and run your Scheme programs. It is available for free for all major platforms, including Windows, Macintosh, and Unix. If you want a copy for home, use Mozilla to go from the course home page to the Concrete Abstractions supporting materials page, to the page on using DrScheme.

To start DrScheme on one of our Linux machines, use the same general technique as for Mozilla: Starting from the Red Hat menu, go to the Apps submenu and then select DrScheme.

The first time you start DrScheme you will be greeted with a window welcoming you and asking you to select a language:

Language Panel

Since we want to work in English, just click Next.  The next panel will ask us about updates. Again Click Next.  This will bring us to a panel asking us to choose a version of the Scheme programming language to use in DrScheme:

Scheme Language

The first thing you should do is to click on "PLT" so as to expose more options listed under it:

Scheme Language PLT

Now click on the "Textual" option under "PLT", to select it:

Scheme Language PLT Textual

Finally, click the panel's "Finish" button. That leaves you with the following main window:


You will type your programs into the upper half of the window (called the definition window) and you will interact with Scheme in the lower half (called the interaction window).

Now you are ready to start doing real work. In the interaction window, type the following Scheme expression: (and press enter).

(+ 5 5)
Scheme evaluates the expression and prints its value:


Next, try typing the definition of a simple Scheme procedure into the definition window:

(define double
(lambda (x)
(+ x x)))
Then click the Execute button to load your definition into the interaction window. You can then run this procedure by typing the following expression in the interaction window:
(double 5)

Most of the time you can ignore the menus and use the following buttons to interact with DrScheme:

For more information, visit the DrScheme documentation page:

This document was customized for Gustavus by Max Hailperin from a version created at Indiana University by Mark Leone, now of Zoesis, Inc. Permission to reproduce and modify was granted by Suzanne Menzel of Indiana University.