MLton's foreign function interface (FFI) extends Standard ML and makes it easy to take the address of C global objects, access C global variables, call from SML to C, and call from C to SML. MLton also provides
ML-NLFFI, which is a higher-level FFI for calling C functions and manipulating C data from SML.
Overview
Importing Code into SML
Exporting Code from SML