Software development in Standard ML

Here are the nice things we would like to have from an ML compiler:

But we can’t have nice things: there is no one compiler that does it all. For this reason, I recommend that you install three compilers. (All three are already installed on the department servers.)

TL;DR: For fast compilation, Moscow ML. For good error messages, MLton. For interactive debugging and exploration, Standard ML of New Jersey.