A type checker. Pages 163–182 of: Peyton Jones, SL (ed), The implementation of functional programming languages (1987)

by P Hancock