- Safe points: a multicore prerequisite that ensures that ocamlopt-generated code can always be interrupted.
- The best-fit GC allocation policy is the now default policy (and many other GCs improvements).
- Named existential type variables in pattern matching
Showable (type a) (x, show : a * (a -> string))
. - Improved error messages for functor application and functor types.
- Let-punning for monadic let:
let* x = x in
can be shortened tolet* x in
. - Module type substitutions
SIG with module type T = F(X).S
. - Many other quality of life improvements
- Many bug fixes
See the detailed list of changes.