Type Classes in Haskell

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

Research output: Contribution to journalArticlepeer-review

142 Citations (Scopus)

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.

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

Keywords

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

Fingerprint

Dive into the research topics of 'Type Classes in Haskell'. Together they form a unique fingerprint.

Cite this