(Enter summary)
Abstract: This paper defines a set of type inference rules for resolving
overloading introduced by type classes. Programs including
type classes are transformed into ones which may be typed
by the Hindley-Milner inference rules. In contrast to other
work on type classes, the rules presented here relate directly
to user programs. An innovative aspect of this work is the
use of second-order lambda calculus to record type information
in the program.
1 Introduction
A funny thing happened on the way to... (Update)
Context of citations to this paper: More
.... oriented programming languages have been studied in great detail [21, 85] Various other language extensions such as type classes [27, 43, 47, 75, 82] and existential types [51] have also traditionally been formulated in a form of calculus. Given the connection between...
.... these fundamental operations are overloaded and available for any type constructor that is an instance of the type class Monad [9, 11]. Type classes and the overloading system will not be covered in this paper, partly because this feature constitutes a virtually orthogonal...
Cited by: More
Associated Types with Class - Chakravarty, Keller, Jones, Marlow (2005)
(Correct)
A General Framework for Hindley/Milner Type Systems with.. - Sulzmann (2000)
(Correct)
Timber: A Programming Language for Real-Time Embedded.. - Black, Carlsson.. (2002)
(Correct)
Similar documents (at the sentence level):
61.3%: Type Classes In Haskell - Hall, Hammond, Jones, Wadler (1996)
(Correct)
39.2%: Type classes in Haskell - Hall, Hammond, Jones, Wadler (1996)
(Correct)
Active bibliography (related documents): More All
0.6: The implementation of the Gofer functional programming system - Jones (1994)
(Correct)
0.2: Type Classes with Existential Types - Läufer (1995)
(Correct)
0.2: Combining Type Classes And Existential Types - Läufer (1994)
(Correct)
Similar documents based on text: More All
0.6: Type Classes and Constraint Handling Rules - Glynn, Stuckey, Sulzmann (2000)
(Correct)
0.3: Once Upon a Type - Turner, Wadler, Mossin (1997)
(Correct)
0.3: Type Checking Type Classes - Nipkow, Prehofer (1993)
(Correct)
Related documents from co-citation: More All
16: A theory of type polymorphism in programming (context) - Milner - 1978
14: Principal type schemes for functional programs (context) - Damas, Milner - 1982
12: A system of constructor classes: overloading and implicit higher-order polymorph..
- Jones - 1995
BibTeX entry: (Update)
Cordelia V. Hall, Kevin Hammond, Simon L. Peyton Jones, and Philip L. Wadler. Type classes in haskell. TOPLAS, 18(2):109--138, March 1996. http://citeseer.ist.psu.edu/hall96type.html More
@article{ hall96type,
author = "Cordelia V. Hall and Kevin Hammond and Simon L. Peyton Jones and Philip L. Wadler",
title = "Type Classes in {H}askell",
journal = "ACM Transactions on Programming Languages and Systems",
volume = "18",
number = "2",
month = "March",
publisher = "ACM Press",
pages = "109--138",
year = "1996",
url = "citeseer.ist.psu.edu/hall96type.html" }
Citations (may not include all citations):
1074
The definition of Standard ML (context) - Milner, Tofte et al. - 1990
809
A theory of type polymorphism in programming (context) - Milner - 1978
359
The implementation of functional programming languages (context) - Jones - 1987
343
Principal type schemes for functional programs (context) - Damas, Milner - 1982
325
Towards a theory of type structure (context) - Reynolds
293
The essence of functional programming
- Wadler - 1992
258
Miranda: A non-strict functional language with polymorphic t.. (context) - Turner - 1985
257
Report on the Programming Language Haskell (context) - Hudak, Jones et al. - 1992
163
Commentary on Standard ML (context) - Milner, Tofte - 1991
160
The principal type scheme of an object in combinatory logic (context) - Hindley - 1969
129
A System of Constructor Classes: Overloading and Implicit Hi..
- Jones - 1993
63
Three approaches to type structure (context) - Reynolds - 1985
59
Basic Polymorphic Typechecking
- Cardelli - 1987
49
A theory of qualified types
- Jones - 1992
33
Implementing Haskell Overloading
- Augustsson - 1993
32
Logical Foundations of Functional Programming (context) - Huet - 1990
32
Parametric Type Classes (context) - Chen, Hudak et al. - 1992
32
Type Checking Type Classes
- Nipkow, Prehofer - 1993
22
Type Classes and Overloading Resolution via Order-Sorted Uni.. (context) - Nipkow, Snelting - 1991
15
the complexity of ML typability with overloading (context) - Volpano, Smith - 1991
14
Department of Computing Science (context) - Jones, Wadler et al. - 1991
14
Safe run-time overloading (context) - Rouaix - 1990
13
Interpr'etation functionelle et 'elimination des coupures da.. (context) - Girard - 1972
6
Type classes are signatures of abstract types (context) - Odersky, Laufer - 1991
6
Implementing Haskell Type Classes (context) - Hammond, Blott - 1989
5
Type dependent parameter inference (context) - Comack, Wright - 1990
5
Efficient Implementation of Type Class Overloading (context) - Jones
4
Parametric polymorphism (context) - Kaes - 1988
4
Glasgow University (context) - Blott, classes et al. - 1991
4
The implementation of functional programming languages (context) - Hancock, In et al. - 1987
2
Loyola University of Chicago (context) - of, First-Class et al. - 1993
2
New York University (context) - Inference, Types et al. - 1992
The graph only includes citing articles where the year of publication is known.
Documents on the same site (http://www.dcs.gla.ac.uk/fp/tech_reports.html): More
Using Overloading to Express Distinctions Between Evaluators - Hall (1993)
(Correct)
Spiking Your Caches - Hammond, Burn, Howe (1993)
(Correct)
Higher-order Binding-time Analysis - Davis (1993)
(Correct)
Online articles have much greater impact More about CiteSeer.IST Add search form to your site Submit documents Feedback
CiteSeer.IST - Copyright Penn State and NEC