Conference proceeding
A simple semantics for Haskell overloading
Proceedings of the 2014 ACM SIGPLAN symposium on haskell, Vol.49(12), pp.107-118
Haskell '14
09/03/2014
DOI: 10.1145/2633357.2633364
Abstract
As originally proposed, type classes provide overloading and ad-hoc definition, but can still be understood (and implemented) in terms of strictly parametric calculi. This is not true of subsequent extensions of type classes. Functional dependencies and equality constraints allow the satisfiability of predicates to refine typing; this means that the interpretations of equivalent qualified types may not be interconvertible. Overlapping instances and instance chains allow predicates to be satisfied without determining the implementations of their associated class methods, introducing truly non-parametric behavior. We propose a new approach to the semantics of type classes, interpreting polymorphic expressions by the behavior of each of their ground instances, but without requiring that those behaviors be parametrically determined. We argue that this approach both matches the intuitive meanings of qualified types and accurately models the behavior of programs.
Details
- Title: Subtitle
- A simple semantics for Haskell overloading
- Creators
- J Garrett Morris - Computer Science
- Resource Type
- Conference proceeding
- Publication Details
- Proceedings of the 2014 ACM SIGPLAN symposium on haskell, Vol.49(12), pp.107-118
- Series
- Haskell '14
- DOI
- 10.1145/2633357.2633364
- ISSN
- 1523-2867
- Publisher
- ACM
- Language
- English
- Date published
- 09/03/2014
- Academic Unit
- Computer Science
- Record Identifier
- 9984259422302771
Metrics
20 Record Views