` COS320-S09: SML/NJ Installation notes

Installing ML on your own machine

Download Standard ML of New Jersey from smlnj.org. We will be using SML/NJ version 110.79, but any version >= 100.67 should be fine.

* On Linux/Unix, unpack this. If you want sml to be in $WHEREVER/bin/sml, then you should unpack it inside directory $WHEREVER; then, sitting in $WHEREVER, run config/install.sh.
* On Mac: follow the instructions for Unix, or use the pre-built systems available here.
* Windows: download and run the installer, but when prompted for "where to install", don't install in the standard place (which is C:/Program Files/SMLNJ) but install it in some path without spaces in the name, such as C:/SMLNJ



Usage notes on Windows.

If you run "SML of New Jersey" from the Start menu, it will start in your Documents and Settings directory. You can "cd" to another directory by
- OS.FileSys.chDir "\path\name\etc";
or you can make a Windows shortcut that starts wherever you want, by modifying the "Start in:" of the properties.

Or, you can just run a command prompt, change to whatever directory you're working in, and run "sml". I prefer to run sml inside a shell window of my Cygwin emacs.


Usage notes on Macintosh

In order to install, unzip the supplied file to an empty directory where you will install. Open a terminal, cd to that directory containing the config directory, and run './config/install.sh'. Once this is complete you need to add the path of the directory 'bin' to your PATH environment variable (to get the full path just cd to bin and type 'pwd'). Then add this full path to your PATH variable in ~/.profile. Close the terminal and reopen it and it should be good to go.



*Using ML on courselab.cs.princeton.edu (Friend Center)

Put ~cos320/smlnj110-79/bin on your search path, and run "sml".

*Using ML on portal.cs.princeton.edu

Put /cmnusr/local/sml/sml-110.79/bin on your search path, and run "sml".

*Note: Some students have noted issues when using the university machines. Please install on your own machines if possible.