A General Type Class Framework

Dear all,

I'd like to announce the availability of the following technical
report which introduces a general framework for type classes
based on Constraint Handling Rules.

A General Type Class Framework 

Kevin Glynn, Peter Stuckey and Martin Sulzmann 

Type classes are an elegant extension to traditional, Hindley-Milner
based typing systems.  Various forms of type classes have been
proposed in the literature, including single--parameter, multi--parameter, 
constructor classes and functional dependencies.  Each new form of type class 
requires two essential properties, decidable type inference and unambiguity of 
programs, to be re-established. We introduce a general framework for type class 
systems based on  Constraint Handling Rules (CHRs). This framework is powerful 
enough to express a wide range of  type classes, and suggests new forms. Under
sufficient conditions on the set of CHRs,  we have decidable operational checks 
which enable type inference and ambiguity checking for type class systems. 

The paper is available from my web-page


Comments are welcome.

Martin Sulzmann