Nothing Special   »   [go: up one dir, main page]

skip to main content
10.1145/800068.802156acmconferencesArticle/Chapter ViewAbstractPublication PageslfpConference Proceedingsconference-collections
Article
Free access

A semantic model of types for applicative languages

Published: 15 August 1982 Publication History

Abstract

If integer constants are added to the syntax of the pure lambda calculus, then primitive integer values have to be added to the underlying domain V of values. Unlike functions, primitive values should not be applied; we want a run-time error to occur if an attempt is made to apply them as functions. Expressions that might lead to run-time errors are separated out by imposing a “type” structure on expressions. A systematic model of types is developed, in which types are formalized as “ideals” (sets with a certain structure). Polymorphic functions are handled by introducing a quantifier for taking conjunctions of types. Operations for constructing new types from old lead to the consideration of higher-order or meta types, which are called “kinds” to avoid confusion with types. Finally, the semantic model of types is applied to show the soundness of a proof system for inferring the types of expressions.

References

[1]
M. Coppo, "An extended polymorphic type system for applicative langauges," pp. 194-204 in Mathematical Foundations of Computer Science 1980, 9th Symposium, Rydzyna, Poland, Lecture Notes in Computer Science 88, Springer-Verlag, Berlin (September 1980).
[2]
L. Damas and R. Milner, "Principal type-schemes for functional programs," Ninth Annual ACM Symposium on Principles of Programming Languages, Albuquerque NM, pp. 207-212 (January 1982).
[3]
M. Gordon, R. Milner, L. Morris, M. Newey, and C. Wadsworth, "A metalanguage for interactive proof in LCF," Fifth Annual ACM Symposium on Principles of Programming Languages, Tucson AZ, pp. 119-130 (January 1978).
[4]
M. J. C. Gordon, "A note on the semantics of explicitly quantified polymorphic types," manuscript (1979).
[5]
N. J. McCracken, "An investigation of a programming language with a polymorphic type structure," Ph.D. Thesis, Computer and Information Science, Syracuse Univ. (June 1979).
[6]
A. R. Meyer, Personal communication, January 1982.
[7]
R. Milner, "A theory of type polymorphism in programming," JCSS17(3), pp. 348-375 (December 1978).
[8]
J. C. Reynolds, "Towards a theory of type structure," pp. 408-425 in Programming Symposium (Colloque sur la Programmation) Paris, Lecture Notes in Computer Science 19, Springer-Verlag, Berlin (1974).
[9]
D. S. Scott, "The lattice of flow diagrams," pp. 311-372 in Symposium on Semantics of Algorithmic Languages, ed. E. Engeler, Lecture Notes in Mathematics 188, Springer-Verlag, Berlin (1971).
[10]
D. S. Scott, "Data types as lattices," SIAM J. Computing5(3), pp. 522-587 (September 1976).
[11]
D. S. Scott, Personal communication, January 1982.
[12]
A. Shamir and W. W. Wadge, "Data types as objects," pp. 465-479 in Automata, Languages and Programming, 4th Colloquium, Turku, Lecture Notes in Computer Science 52, Springer-Verlag, Berlin (1977).
[13]
W. W. Wadge, Personal communication to R. Milner, March 1978.
[14]
M. Wand, Personal communication, January 1982.

Cited By

View all
  • (2005)Realizability models for program constructionMathematics of Program Construction10.1007/3-540-51305-1_14(256-272)Online publication date: 1-Jun-2005
  • (2005)A constructive set theory for program developmentFoundations of Software Technology and Theoretical Computer Science10.1007/3-540-50517-2_89(329-347)Online publication date: 31-May-2005
  • (2005)The semantics of Miranda's algebraic typesMathematical Foundations of Programming Language Semantics10.1007/3-540-19020-1_25(455-473)Online publication date: 26-May-2005
  • Show More Cited By

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image ACM Conferences
LFP '82: Proceedings of the 1982 ACM symposium on LISP and functional programming
August 1982
264 pages
ISBN:0897910826
DOI:10.1145/800068
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: 15 August 1982

Permissions

Request permissions for this article.

Check for updates

Qualifiers

  • Article

Acceptance Rates

Overall Acceptance Rate 30 of 109 submissions, 28%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)51
  • Downloads (Last 6 weeks)1
Reflects downloads up to 14 Dec 2024

Other Metrics

Citations

Cited By

View all

View Options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Login options

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media