SML/NJ with mutual exclusion primitives similar to those in Modula-2+ and Mesa . Written by Greg Morrisett jgmorris@cs.cmu.edu .
Lightweight thread s are created using fork . They are pre-emptive ly scheduled and communicate via shared memory which can be protected by a " mutex " ( monitor ).
Implementations for Motorola 68020 , SPARC and MIPS and VAX - and MIPS -based multiprocessors.
["Adding Threads to Standard ML", E. Cooper et al, CMU-CS-90-186, CMU Dec 1990].