) Kung Chen, Paul Hudak, Martin Odersky Yale University, Department of Computer Science, Box 2158 Yale Station, New Haven, CT 06520 ACM Conf. on LISP and Functional Programming, June 1992 Abstract We propose a generalization to Haskell's type classes where a class can have type parameters besides the placeholder variable. We show that this generalization is essential to represent container classes with overloaded data constructor and selector operations. We also show that the resulting type system has principal types and present unification and type reconstruction algorithms. 1 Introduction Haskell's type classes provide a structured way to introduce overloaded functions, and are perhaps the most innovative (and somewhat controversial) aspect of the language design [HJW91]. Type classes permit the definition of overloaded operators in a rigorous and (fairly) general manner that integrates well with the underlying Hindley-Milner type system. As a result, operators that are monomor...
user correction - Legacy Corrections
In ACM conference on LISP and Functional Programming