OPL Mantras

Inspired by J. Canning's Computing I, here are
OPL Mantras.

Lecture Review

All of the class lectures are recorded using the Echo360 system. Here is a link to them:

Please note that the first two don't have a video feed, because I was using an incompatible resolution on my laptop.

Scheme vs. Racket

The version of Scheme we will use is now called Racket. Get it? Here's more:

Which Version?

We'll use the latest version, Racket. Get it from and choose your platform (Mac, Win, or Linux).

Backward Compatibility

Some problem sets are based on an older language spec (e.g., R5RS) and will need reverting the Racket environment to this earlier version. How to do this will be clearly specified in the problem set.

Here are some notes (you're not supposed to understand this at the beginning of the class):

  • To use mutable pairs in Racket or R6RS, put the line (require (lib "rnrs/mutable-pairs-6.rkt")) after the #lang racket specification.

Racket User Group

There is a small but highly devoted team that continues to develop the Racket platform. They are quite welcoming to students who are trying to learn the ideas in the language.

There is a mailing list and archives at Please search the archives and feel free to post to the mailing list if you are confused and want help (particularly if you think something's broken or are not sure if it is).

Note: They are very good at realizing students who are looking for direct answers to problem sets, so don't try that sort of thing :)