Lecture notes in computer science vol:4279 pages:26-43
Asian Symposium on Programming Languages and Systems edition:4 location:Sydney, Australia date:November 8-10, 2006
We observe that the combination of multi-parameter type classes with existential types and type annotations leads to a loss of principal types and undecidability of type inference. This may be a surprising fact for users of these popular features. We conduct a concise investigation of the problem and are able to give a type inference procedure which, if successful, computes principal types under the conditions imposed by the Glasgow Haskell Compiler (GHC). Our results provide new insights on how to perform type inference for advanced type extensions.