Skip to content

Research at St Andrews

Type Classes in Haskell

Research output: Contribution to journalArticle

Author(s)

Kevin Hammond, CV Hall, SL Peyton Jones, PL Wadler

School/Research organisations

Abstract

This article defines a set of type inference rules for resolving overloading introduced by type classes, as used in the functional programming language Haskell. Programs including type classes are transformed into ones which may be typed by standard Hindley-Milner inference rules. In contrast to other work on type classes, the rules presented here relate directly to Haskell programs. An innovative aspect of this work is the use of second-order lambda calculus to record type information in the transformed program.

Close

Details

Original languageEnglish
Pages (from-to)109-138
Number of pages30
JournalACM Transactions in Programming Languages and Systems
Volume18
Issue number2
StatePublished - Mar 1996

    Research areas

  • languages, theory, functional programming, Haskell, type classes, types

Discover related content
Find related publications, people, projects and more using interactive charts.

View graph of relations

Related by journal

  1. An Ad-Hoc Approach to the Implementation of Polymorphism

    Morrison, R., Dearle, A., Connor, RCH. & Brown, AL. Jul 1991 In : ACM Transactions in Programming Languages and Systems. 13, 3, p. 342-371 30 p.

    Research output: Contribution to journalArticle

  2. Procedures as Persistent Data Objects

    Atkinson, MP. & Morrison, R. 1985 In : ACM Transactions in Programming Languages and Systems. 7, p. 539-559 21 p.

    Research output: Contribution to journalArticle

ID: 103900