This apper gives a static semantics for a large subset of Haskell, including giving a translations into a language without overloading.

It is our intention to cover the complete language in due course.

One innovative aspect is the use of ideas from the second-order lambda calculus to record type information in the program.