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 author

  1. Automatically deriving cost models for structured parallel processes using hylomorphisms

    Castro, D., Hammond, K., Sarkar, S. & Alguwaifli, Y. Feb 2018 In : Future Generation Computer Systems. 79, Part 2, p. 653-668

    Research output: Contribution to journalArticle

  2. The Missing Link! A new skeleton for evolutionary multi-agent systems in Erlang

    Stypka, J., Turek, W., Byrski, A., Kisiel-Dorohinicki, M., Barwell, A. D., Brown, C. M., Hammond, K. & Janjic, V. Feb 2018 In : International Journal of Parallel Programming. 46, 1, p. 4-22 19 p.

    Research output: Contribution to journalArticle

  3. Proof-relevant Horn clauses for dependent type inference and term synthesis

    Farka, F., Komendantskya, E. & Hammond, K. 2018 In : Theory and Practice of Logic Programming. 18, 3-4, p. 484-501

    Research output: Contribution to journalArticle

  4. Type-based cost analysis for lazy functional languages

    Jost, S., Vasconcelos, P., Florido, M. & Hammond, K. Jun 2017 In : Journal of Automated Reasoning. 59, 1, p. 87-120 34 p.

    Research output: Contribution to journalArticle

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