Skip to main content

What do types mean? — From intrinsic to extrinsic semantics

  • Chapter
Programming Methodology

Part of the book series: Monographs in Computer Science ((MCS))

Abstract

A definition of a typed language is said to be “intrinsic” if it assigns meanings to typings rather than arbitrary phrases, so that ill-typed phrases are meaningless. In contrast, a definition is said to be “extrinsic” if all phrases have meanings that are independent of their typings, while typings represent properties of these meanings.

For a simply typed lambda calculus, extended with integers, recursion, and conditional expressions, we give an intrinsic denotational semantics and a denotational semantics of the underlying untyped language. We then estab?lish a logical relations theorem between these two semantics, and show that the logical relations can be “bracketed” by retractions between the domains of the two semantics. From these results, we derive an extrinsic semantics that uses partial equivalence relations.

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

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 84.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 149.00
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info
Hardcover Book
USD 109.99
Price excludes VAT (USA)
  • Durable hardcover edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. John C. Reynolds. Theories of Programming Languages. Cambridge University Press, Cambridge, England, 1998.

    Google Scholar 

  2. Daniel Leivant. Typing and computational properties of lambda expressions. Theoretical Computer Science, 44 (1): 51–68, 1986.

    Article  MathSciNet  MATH  Google Scholar 

  3. Gordon D. Plotkin. Lambda-definability and logical relations. Memorandum SAIRM-4, University of Edinburgh, Edinburgh, Scotland, October 1973.

    Google Scholar 

  4. Dana S. Scott. Data types as lattices. SIAM Journal on Computing, 5 (3): 522–587, September 1976.

    Article  MathSciNet  MATH  Google Scholar 

  5. David M. R. Park. The Y-combinator in Scott’s lambda-calculus models. Symposium on Theory of Programming, University of Warwick, unpublished; cited in [6], 1970.

    Google Scholar 

  6. Christopher P. Wadsworth. The relation between computational and denotational properties for Scott’s Dom-models of the lambda-calculus. SIAM Journal on Computing, 5 (3): 488–521, September 1976.

    Article  MathSciNet  MATH  Google Scholar 

  7. David B. MacQueen and Ravi Sethi. A semantic model of types for applicative languages. In Conference Record of the 1982 ACM Symposium on LISP and Functional Programming, pages 243–252, New York, 1982. ACM.

    Google Scholar 

  8. David B. MacQueen, Gordon D. Plotkin, and Ravi Sethi. An ideal model for recursive polymorphic types. Information and Control, 71(1–2):95–130,October–November 1986.

    Google Scholar 

  9. Dana S. Scott. Lambda calculus: Some models, some philosophy. In Jon Barwise, H. Jerome Keisler, and Kenneth Kunen, editors, The Kleene Symposium, volume 101 of Studies in Logic and the Foundations of Mathematics, pages 223–265, Amsterdam, 1980. North-Holland.

    Google Scholar 

  10. Andrej Bauer, Lars Birkedal, and Dana S. Scott. Equilogical spaces. To appear in Theoretical Computer Science, 2002.

    Google Scholar 

  11. Anne Sjerp Troelstra, editor. Metamathematical Investigation of Intuitionistic Arithmetic and Analysis, volume 344 of Lecture Notes in Mathematics. Springer-Verlag, Berlin, 1973.

    Google Scholar 

  12. Anne Sjerp Troelstra. Realizability. In Samuel R. Buss, editor Handbook of Proof Theory volume 137 of Studies in Logic and the Foundations of Mathematics, pages 407–473. Elsevier, Amsterdam, 1998.

    Google Scholar 

  13. Georg Kreisel. Interpretation of analysis by means of constructive functionals of finite types. In Arend Heyting, editor, Constructivity in Mathematics, pages 101–128. North-Holland, Amsterdam, 1959.

    Google Scholar 

  14. S. C. Kleene. Countable functionals. In Arend Heyting, editor, Constructivity in Mathematics, pages 81–100. North-Holland, Amsterdam, 1959.

    Google Scholar 

  15. Roberto M. Amadio and Pierre-Louis Curien. Domains and Lambda-Calculi, volume 46 of Cambridge Tracts in Theoretical Computer Science. Cambridge University Press, Cambridge, England, 1998.

    Google Scholar 

  16. John C. Reynolds. The meaning of types — from intrinsic to extrinsic semantics. Research Series RS-00–32, BRICS, DAIMI, Department of Computer Science, University of Aarhus, December 2000.

    Google Scholar 

  17. John C. Reynolds. An intrinsic semantics of intersection types (abstract of invited lecture). In Proceedings of the Workshop on Intersection Types and Related Systems, 2000. The slides for this lecture are available at ftp://ftp.cs.cmu.edu/user/jcr/intertype.ps.gz.

    Google Scholar 

Download references

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2003 Springer Science+Business Media New York

About this chapter

Cite this chapter

Reynolds, J.C. (2003). What do types mean? — From intrinsic to extrinsic semantics. In: McIver, A., Morgan, C. (eds) Programming Methodology. Monographs in Computer Science. Springer, New York, NY. https://doi.org/10.1007/978-0-387-21798-7_15

Download citation

  • DOI: https://doi.org/10.1007/978-0-387-21798-7_15

  • Publisher Name: Springer, New York, NY

  • Print ISBN: 978-1-4419-2964-8

  • Online ISBN: 978-0-387-21798-7

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics