Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.1145/158511.158622acmconferencesArticle/Chapter ViewAbstractPublication PagespoplConference Proceedingsconference-collections
Article
Free access

Formal parametric polymorphism

Published: 01 March 1993 Publication History
  • Get Citation Alerts
  • 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]
    E.S. Bainbridge, P.J. Freyd, A. Scedrov, and P.J. Scott, Functoriai polymorphism. Theoretical Computer Science 70, 35-64.
    [2]
    C. BOhm and A. Berarducci, Automatic synthesis of typed Z,-programs on term algebras. Theoretical Computer Science 39, 135-154.
    [3]
    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.
    [4]
    J.-Y. Girard, Y. Lafont, and P. Taylor, Proofs and types. Cambridge University Press.
    [5]
    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.
    [6]
    R. Hasegawa, Categorical data types in parametric polymorphism. Manuscript.
    [7]
    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.
    [8]
    G. Longo, C. Milstead, and S. Soloviev, A syntactic understanding of parametricity in polymorphic languages. Manuscript.
    [9]
    G. Longo and E. Moggi, Constructive natural deduction and its 'obset' interpretation. Mathematical Structures in Computer Science 1(2).
    [10]
    Q.M. Ma. Parametricity as subtyping. Proc. 19th Annual ACM Symposium on Principles of Programming Languages.
    [11]
    Q.M. Ma and J. Reynolds. Types, abstraction, and parametric polymorphism, part 2. Proc. Mathematical Foundations of Programming Semantics. Springer-Verlag.
    [12]
    H. Mairson. Outline of a proof theory of parametricity. Proc. 5th International Symposium on Functional Programming Languages and Computer Architecture. Springer-Verlag.
    [13]
    R. Milner, M. Toftc, and R. Harper, The dermition of Standard ML. MIT Press.
    [14]
    J.C. Mitchell and A. Scedrov, Sconing, relators, and parametricity. Manuscript.
    [15]
    G.D. Plotkin, M. Abadi, and L. Cardelli, A logic for parametric polymor. phism. Manuscript.
    [16]
    J.C. Reynolds, Types, abstraction, and parametric polymorphism, in Information Processing, R.E.A. Mason, Editor. North Holland: p. 513-523.
    [17]
    C. Strachey, Fundamental concepts in programming languages. Lecture notes for the International Summer School in Computer Programming, Copenhagen, August 1967.
    [18]
    P. Wadler. Theorems for free! Proc. 4th International Symposium on Functional Programming Languages and Computer Architecture. Springer- Verlag.
    [19]
    P. Wadler, Recursive types for free! Manuscript.

    Cited By

    View all
    • (2019)Bidirectional type checking for relational propertiesProceedings of the 40th ACM SIGPLAN Conference on Programming Language Design and Implementation10.1145/3314221.3314603(533-547)Online publication date: 8-Jun-2019
    • (2019)A relational logic for higher-order programsJournal of Functional Programming10.1017/S095679681900014529Online publication date: 21-Oct-2019
    • (2018)Algorithm/Architecture Co-Design for Near-Memory ProcessingACM SIGOPS Operating Systems Review10.1145/3273982.327399252:1(109-122)Online publication date: 28-Aug-2018
    • Show More Cited By

    Recommendations

    Comments

    Information & Contributors

    Information

    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
    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]

    Sponsors

    Publisher

    Association for Computing Machinery

    New York, NY, United States

    Publication History

    Published: 01 March 1993

    Permissions

    Request permissions for this article.

    Check for updates

    Qualifiers

    • Article

    Conference

    POPL93

    Acceptance Rates

    POPL '93 Paper Acceptance Rate 39 of 199 submissions, 20%;
    Overall Acceptance Rate 824 of 4,130 submissions, 20%

    Upcoming Conference

    POPL '25

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • Downloads (Last 12 months)74
    • Downloads (Last 6 weeks)13
    Reflects downloads up to 11 Aug 2024

    Other Metrics

    Citations

    Cited By

    View all
    • (2019)Bidirectional type checking for relational propertiesProceedings of the 40th ACM SIGPLAN Conference on Programming Language Design and Implementation10.1145/3314221.3314603(533-547)Online publication date: 8-Jun-2019
    • (2019)A relational logic for higher-order programsJournal of Functional Programming10.1017/S095679681900014529Online publication date: 21-Oct-2019
    • (2018)Algorithm/Architecture Co-Design for Near-Memory ProcessingACM SIGOPS Operating Systems Review10.1145/3273982.327399252:1(109-122)Online publication date: 28-Aug-2018
    • (2018)PupilNet, Measuring Task Evoked Pupillary Response using Commodity RGB Tablet CamerasProceedings of the ACM on Interactive, Mobile, Wearable and Ubiquitous Technologies10.1145/31611641:4(1-26)Online publication date: 8-Jan-2018
    • (2017)A relational logic for higher-order programsProceedings of the ACM on Programming Languages10.1145/31102651:ICFP(1-29)Online publication date: 29-Aug-2017
    • (2017)A Survey and Comparative Study of Hard and Soft Real-Time Dynamic Resource Allocation Strategies for Multi-/Many-Core SystemsACM Computing Surveys10.1145/305726750:2(1-40)Online publication date: 11-Apr-2017
    • (2012)A Computational Interpretation of ParametricityProceedings of the 2012 27th Annual IEEE/ACM Symposium on Logic in Computer Science10.1109/LICS.2012.25(135-144)Online publication date: 25-Jun-2012
    • (2012)Proofs for freeJournal of Functional Programming10.1017/S095679681200005622:2(107-152)Online publication date: 1-Mar-2012
    • (2012)Adding equations to system f typesProceedings of the 21st European conference on Programming Languages and Systems10.1007/978-3-642-28869-2_21(417-435)Online publication date: 24-Mar-2012
    • (2011)Realizability and parametricity in pure type systemsProceedings of the 14th international conference on Foundations of software science and computational structures: part of the joint European conferences on theory and practice of software10.5555/1987171.1987181(108-122)Online publication date: 26-Mar-2011
    • Show More Cited By

    View Options

    View options

    PDF

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader

    Get Access

    Login options

    Media

    Figures

    Other

    Tables

    Share

    Share

    Share this Publication link

    Share on social media