Abstract
We study the type inference problem for a system with type classes as in the functional programming language Haskell. Type classes are an extension of ML-style polymorphism with overloading. We generalize Milner's work on polymorphism by introducing a separate context constraining the type variables in a typing judgement. This leads to simple type inference systems and algorithms which closely resemble those for ML. In particular, we present a new unification algorithm which is an extension of syntactic unification with constraint solving. The existence of principal types follows from an analysis of this unification algorithm.
| Original language | English |
|---|---|
| Pages (from-to) | 201-224 |
| Number of pages | 24 |
| Journal | Journal of Functional Programming |
| Volume | 5 |
| Issue number | 2 |
| DOIs | |
| State | Published - Apr 1995 |
Fingerprint
Dive into the research topics of 'Type Reconstruction for Type Classes'. Together they form a unique fingerprint.Cite this
- APA
- Author
- BIBTEX
- Harvard
- Standard
- RIS
- Vancouver