15-312 Foundations of Programming Languages

The implementation language in this course will be Standard ML. We assume you are already familiar with ML (15-212 is a prerequisite for this class), so we provide only a few potentially helpful links.

Running SML/NJ

On Suns and other Unix machines, you may run the CS installation of SML/NJ with


or simply as /usr/contributed/bin/sml-cm. The first command runs SML/NJ version 110.0.3, the latter SML version 110.0.6. You're welcome to develop your code using any SML compiler you like, but please make sure your code runs correctly under SML/NJ 110.0.3: when we grade, we will use that version to test your code. Also, the interface to the Compilation Manager varies depending on the version of SML/NJ, so you'll probably run into fewer hassles if you use the same version we do.

Concurrent ML (CML)

See the CML home page. CML is not installed in the standard Andrew environment. In the CS domain it can be run as cml-cm on most Linux machines.

Using SML/NJ

[ Home | Schedule | Assignments | Software | Resources ]

Frank Pfenning