Hindley-Milner type inference
= Hindley-Milner type inference
{c}
Inference of a <principal type> in the <Hindley-Milner type system> uses fresh <type variables> and <type unification> to satisfy the constraints imposed by expressions. A successful result describes every valid monomorphic instance through <type substitution>; generalization at suitable bindings forms a <type scheme> for later instantiation.