15-312 Principles of Programming Languages

Course Software

The implementation language in this course will be Standard ML.

Running SML/NJ

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


or simply as /usr/contributed/bin/sml-cm. Please be sure that your code runs with SML/NJ version 110.57, the current release.

Concurrent ML (CML)

See the CML home page for information on CML. In the Andrew environment, you can load it from sml with

    CM.autoload' "/usr/contributed/lib/smlnj/lib/cml.cm";

which defines the structure CML. You can see the components with open CML; or refer to the documentation or the examples. If you use the compilation manager, include cml.cm in sources.cm.

Using SML/NJ

Robert Harper
Last modified: Fri Dec 9 23:41:18 EST 2016