A parser, a Hindley-Milner type checker and an interpreter of a simple functional language.