2000/06/26 by Kevin Glynn, Glynn, Kevin, Martin Sulzmann +3 · 1 citation
Computer Science · #Advanced Database Systems and Queries #D.3.3 #F.3.1 #FOS: Computer and information sciences #Logic, programming, and type systems #Model-Driven Software Engineering Techniques #Programming Languages (cs.PL) #cs.PL
paper · pdf · doi:10.48550/arxiv.cs/0006034
14 pages, Workshop on Rule-Based Constraint Reasoning and Programming (http://www.informatik.uni-muenchen.de/~fruehwir/cl2000r.html)
arxiv created 2000/06/26 · openalex publication_date 2000/06/26 · arxiv updated 2009/11/30 · openalex created_date 2025/10/10 · openalex updated_date 2026/07/28
Type classes are an elegant extension to traditional, Hindley-Milner based typing systems. They are used in modern, typed languages such as Haskell to support controlled overloading of symbols. Haskell 98 supports only single-parameter and constructor type classes. Other extensions such as multi-parameter type classes are highly desired but are still not officially supported by Haskell. Subtle issues arise with extensions, which may lead to a loss of feasible type inference or ambiguous programs. A proper logical basis for type class systems seems to be missing. Such a basis would allow extensions to be characterised and studied rigorously. We propose to employ Constraint Handling Rules as a tool to study and develop type class systems in a uniform way.