Haskell 98: Declarations and Bindings
4.1 Overview of Types and Classes 404.2 User-Defined datatypes 454.3 Type Classes and Overloading 494.4 Nested Declarations 554.5 Static Semantics of Function and Pattern Bindings 604.6 Kind Inference 66