SMLNJ Basis Documentation

By Jacob Neumann, June 2021

This page collects some documentation of the SML Basis Library produced as part of the development of the Auxiliary Library. The documents linked below provide documentation of some (but definitely not all) of the SML Basis modules. Unless otherwise stated, the documentation is of the version of the basis implemented in SMLNJ v110.99.

This documentation is meant as a more accessible alternate to the more official documentation. In places, it also includes explicit mathematical definitions, proofs by induction, asymptotic analyses, and evaluation traces.


The Fn module provides basic combinators, including some of the fundamental operations in lambda calculus. This includes the composition operator, o, which is available at top-level.