skip to main content
10.1145/158511.158622acmconferencesArticle/Chapter ViewAbstractPublication PagespoplConference Proceedingsconference-collections
Article
Free Access

Formal parametric polymorphism

Published:01 March 1993Publication History

ABSTRACT

A polymorphic function is parametric if its behavior does not depend on the type at which it is instantiated. Starting with Reynolds' work, the study of parametricity is typically semantic. In this paper, we develop a syntactic approach to parametricity, and a formal system that embodies this approach: system ℜ. Girard's system F deals with terms and types; ℜ is an extension of F that deals also with relations between types.

In ℜ, it is possible to derive theorems about functions from their types, or "theorems for free", as Wadler calls them. An easy"theorem for free" asserts that the type ∀(X)X → Bool contains only constant functions; this is not provable in F. There are many harder and more substantial examples. Various metatheorems can also be obtained, such as a syntactic version of Reynolds' abstraction theorem.

References

  1. Bainbridge, et al 1990.E.S. Bainbridge, P.J. Freyd, A. Scedrov, and P.J. Scott, Functoriai polymorphism. Theoretical Computer Science 70, 35-64. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. Böhm, Berarducci 1985.C. BOhm and A. Berarducci, Automatic synthesis of typed Z,-programs on term algebras. Theoretical Computer Science 39, 135-154.Google ScholarGoogle Scholar
  3. Cardelli, et al 1991.L. CardeUi, J.C. Mitchell, S. Martini, and A. Scedrov. An extension of system F with subtyping. Proc. Theoretical Aspects of Computer Software. Sendai, Japan. Lecture Notes in Computer Science 526. Springer-Verlag. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. Girard, Lafont, Taylor 1989.J.-Y. Girard, Y. Lafont, and P. Taylor, Proofs and types. Cambridge University Press. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. Hasegawa 1991.R. Hasegawa. Parametricity of extensionally collapsed term models of polymorphism and their categorical properties. Proc. Theoretical Aspectes of Computer Software. Lecture Notes in Computer Science 526. Springer-Verlag. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. Hasegawa 1992.R. Hasegawa, Categorical data types in parametric polymorphism. Manuscript.Google ScholarGoogle Scholar
  7. Hyland, Robinson, Rosolini 1990.J.M.E. Hyland, E.P. Robinson, and G. Rosolini. Algebraic types in PER models. Proc. Mathematical Foundations of Programming Semantics. Lecture Notes in Computer Science 442. Springer-Verlag. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. Longo, Milstead, Soloviev 1992.G. Longo, C. Milstead, and S. Soloviev, A syntactic understanding of parametricity in polymorphic languages. Manuscript.Google ScholarGoogle Scholar
  9. Longo, Moggi 1991.G. Longo and E. Moggi, Constructive natural deduction and its 'obset' interpretation. Mathematical Structures in Computer Science 1(2).Google ScholarGoogle Scholar
  10. Ma 1992.Q.M. Ma. Parametricity as subtyping. Proc. 19th Annual ACM Symposium on Principles of Programming Languages. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. Ma, Reynolds 1991.Q.M. Ma and J. Reynolds. Types, abstraction, and parametric polymorphism, part 2. Proc. Mathematical Foundations of Programming Semantics. Springer-Verlag. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. Mairson 1991.H. Mairson. Outline of a proof theory of parametricity. Proc. 5th International Symposium on Functional Programming Languages and Computer Architecture. Springer-Verlag. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. Milner, Tofte, Harper 1989.R. Milner, M. Toftc, and R. Harper, The dermition of Standard ML. MIT Press. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. Mitchell, Scedrov 1992.J.C. Mitchell and A. Scedrov, Sconing, relators, and parametricity. Manuscript.Google ScholarGoogle Scholar
  15. Plotkin, Abadi, Cardelli 1992.G.D. Plotkin, M. Abadi, and L. Cardelli, A logic for parametric polymor. phism. Manuscript.Google ScholarGoogle Scholar
  16. Reynolds 1983.J.C. Reynolds, Types, abstraction, and parametric polymorphism, in Information Processing, R.E.A. Mason, Editor. North Holland: p. 513-523.Google ScholarGoogle Scholar
  17. Strachey 1967.C. Strachey, Fundamental concepts in programming languages. Lecture notes for the International Summer School in Computer Programming, Copenhagen, August 1967.Google ScholarGoogle Scholar
  18. Wadler 1989.P. Wadler. Theorems for free! Proc. 4th International Symposium on Functional Programming Languages and Computer Architecture. Springer- Verlag.Google ScholarGoogle Scholar
  19. Wadler 1991.P. Wadler, Recursive types for free! Manuscript.Google ScholarGoogle Scholar

Recommendations

Comments

Login options

Check if you have access through your login credentials or your institution to get full access on this article.

Sign in
  • Published in

    cover image ACM Conferences
    POPL '93: Proceedings of the 20th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
    March 1993
    510 pages
    ISBN:0897915607
    DOI:10.1145/158511

    Copyright © 1993 ACM

    Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

    Publisher

    Association for Computing Machinery

    New York, NY, United States

    Publication History

    • Published: 1 March 1993

    Permissions

    Request permissions about this article.

    Request Permissions

    Check for updates

    Qualifiers

    • Article

    Acceptance Rates

    POPL '93 Paper Acceptance Rate39of199submissions,20%Overall Acceptance Rate824of4,130submissions,20%

    Upcoming Conference

    POPL '25

PDF Format

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader