Skip to main content

An extended polymorphic type system for applicative languages

  • Communications
  • Conference paper
  • First Online:
Mathematical Foundations of Computer Science 1980 (MFCS 1980)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 88))

Abstract

This paper deals with the problem of finding a type system for programming languages, which allows the greatest generality in the definition of polymorphic procedures. The type system introduced in this paper can be seen as an extension of the one proposed in /MLN/ (which is implemented in the language ML).

The rules for type assignement are given and their semantic correctness is proved. Moreover, some results about the semantic characterization of typed terms are proved.

This research was supported by C.N.R. — G.N.A.S.I.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. C. Ben-Yelles “Type assignment in the lambda-calculus: Syntax and Semantics”, P.h.D. thesis, University of Wales (1979)

    Google Scholar 

  2. M. Coppo, M. Dezani-Ciancaglini. “An extension of Basic Functionality theory for λ-calculus”, Internal report, University of Turin. To appear in “Notre Dame Journal of Formal Logic”

    Google Scholar 

  3. M. Coppo, M. Dezani-Ciancaglini, B. Venneri. “Principal Type Schemes and calculus Semantics” Internal report, University of Turin. To appear in: To H.B. Curry, Essays on Combinatory Logic, Lambda-calculus and Formalism, eds. R. Hindley and J.P. Seldin, Academic Press (1980).

    Google Scholar 

  4. H.B. Curry,R.Feys “Combinatory Logic I”, North-Holland (1958)

    Google Scholar 

  5. A. Demers, J. Donahue “Report on the Programming Language Russel”, TR79-371, Computer Science Department, Cornell University (1979)

    Google Scholar 

  6. J. Donahue “On the Semantics of data types”, TR77-311, Computer Science Department, Cornell University (1977)

    Google Scholar 

  7. J.D. Gammon “An Experimental Evaluation of Data Type Conventions”, Comm. ACM 20,8 (1977) 584–595

    Google Scholar 

  8. D. Gries and N. Gehani “Some ideas on data types in high-level languages”, Camm. ACM. 20,6 (1977).

    Google Scholar 

  9. M.J. Gordon, A.J. Milner, C.P. Wadsworth “Edimburgh LCF”, Lecture notes in Computer Science, n. 78.

    Google Scholar 

  10. R. Hindley “An abstract Church-Rosser Theorem II: applications”, Journal of Symbolic Logic, 39, 1 (1974), 1–21.

    Google Scholar 

  11. B. Liskov, A. Snyder “Abstraction Mechanisms in CLU”, Camm. ACM. 20,3 (1977), 564–583

    Google Scholar 

  12. R. Milner “A theory of type polymorphism in programming”, Journ. Comp. and Syst. Science 17,3 (1978), 348–375.

    Google Scholar 

  13. J. H. Morris “Lambda-calculus models of programming languages”, Ph.D.Thesis, MAC-TR-57, MIT (1968)

    Google Scholar 

  14. G. Plotkin, “LCF considered as a programming language”, J. Theoret. Comput. Sci. 5,3 (1977) 522–537

    Google Scholar 

  15. G. Plotkin “T ω as a Universal Domain”, J. Comput. System Sci. 17,2 (1978), 209–236.

    Google Scholar 

  16. J.C. Reynolds “Towards a theory of type structure”, Lecture Notes in Computer Science n. 12, 408–425

    Google Scholar 

  17. J. Stoy “Denotational Semantics”, MIT Press (1977)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

P. Dembiński

Rights and permissions

Reprints and permissions

Copyright information

© 1980 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Coppo, M. (1980). An extended polymorphic type system for applicative languages. In: Dembiński, P. (eds) Mathematical Foundations of Computer Science 1980. MFCS 1980. Lecture Notes in Computer Science, vol 88. Springer, Berlin, Heidelberg. https://doi.org/10.1007/BFb0022505

Download citation

  • DOI: https://doi.org/10.1007/BFb0022505

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-10027-0

  • Online ISBN: 978-3-540-38194-5

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics