Proceedings of the 1992 ACM Conference on LISP and Functional Programming 1992
DOI: 10.1145/141471.141536
|View full text |Cite
|
Sign up to set email alerts
|

Parametric type classes

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 cent airier 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.

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1
1
1

Citation Types

0
21
0

Year Published

1994
1994
2023
2023

Publication Types

Select...
4
3
1

Relationship

1
7

Authors

Journals

citations
Cited by 41 publications
(21 citation statements)
references
References 10 publications
0
21
0
Order By: Relevance
“…As already observed by Jones, functional dependencies subsume parametric type classes [Chen et al 1992]. For example, the (parametric) declaration class a :: Foo b can be expressed by the functional dependency class Foo a b | a->b.…”
Section: Examples Of Type Class Systemsmentioning
confidence: 84%
See 2 more Smart Citations
“…As already observed by Jones, functional dependencies subsume parametric type classes [Chen et al 1992]. For example, the (parametric) declaration class a :: Foo b can be expressed by the functional dependency class Foo a b | a->b.…”
Section: Examples Of Type Class Systemsmentioning
confidence: 84%
“…In particular, we considered functional dependencies [Jones 2000] and some of its variations [Duggan and Ophel 2002b;Chen et al 1992]. CHRs do not solve the termination problem in case of Example 25.…”
Section: Related Workmentioning
confidence: 99%
See 1 more Smart Citation
“…In fact, the original proposal for functional dependencies in Haskell was conceived as a generalization of the work on parametric type classes by Chen et al [5]. Functional dependencies were never intended to serve as an ultimate mechanism for improving qualified types, but were just one 'sweet spot', hitting a nice compromise between expressive power and tractability, while also leveraging results from database theory.…”
Section: Beyond Functional Dependenciesmentioning
confidence: 99%
“…There has been closely related work by Rouaix [1990] and Cormack and Wright [1990]; Nipkow and Snelting [1991] and Nipkow and Prehofer [1993] also describe type inference algorithms for type classes based on sorts; and work directly inspired by Haskell type classes includes the closely related Gofer type system with its multiparameter classes [Jones 1992a;1992b;, an extension of ML with type classes [Volpano and Smith 1991], constructor classes [Jones 1995], first-class abstract data types [Läufer 1992;Läufer and Odersky 1994;Odersky and Läufer 1991], and parametric type classes [Chen 1994;Chen et al 1992].…”
Section: Introductionmentioning
confidence: 99%