ACM Home Page
Please provide us with feedback. Feedback
Embedding type structure in semantics
Full text PdfPdf (594 KB)
Source Annual Symposium on Principles of Programming Languages archive
Proceedings of the 12th ACM SIGACT-SIGPLAN symposium on Principles of programming languages table of contents
New Orleans, Louisiana, United States
Pages: 1 - 6  
Year of Publication: 1985
ISBN:0-89791-147-4
Author
Mitchell Wand  Computer Science Department, Indiana University, Lindley Hall 101, Bloomington, IN
Sponsors
SIGACT: ACM Special Interest Group on Algorithms and Computation Theory
SIGPLAN: ACM Special Interest Group on Programming Languages
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 2,   Downloads (12 Months): 15,   Citation Count: 7
Additional Information:

abstract   references   cited by   index terms   collaborative colleagues  

Tools and Actions: Request Permissions Request Permissions    Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/318593.318602
What is a DOI?

ABSTRACT

We show how a programming language designer may embed the type structure of a programming language in the more robust type structure of the typed lambda calculus. This is done by translating programs of the language into terms of the typed lambda calculus. Our translation, however, does not always yield a well-typed lambda term. Programs whose translations are not well-typed are considered meaningless, that is, ill-typed. We give a conditionally type-correct semantics for a simple language with continuation semantics. We provide a set of static type-checking rules for our source language, and prove that they are sound and complete: that is, a program passes the typing rules if and only if its translation is well-typed. This proves the correctness of our static semantics relative to the well-established typing rules of the typed lambda-calculus.


REFERENCES

Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.

 
1
[Clinger, Friedman, and Wand 82] Clinger, W., Friedman, D. P., and Wand, M. "A Scheme for a Higher-Level Semantic Algebra," presentation at US-French Seminar on the Application of Algebra to Language Definition and Compilation, Fontainebleau, France, 1982; proceedings to appear.
2
 
3
[COPPO 84] Coppo, M. "Completeness of Type Assignment in Continuous Lambda Models" Theoret. Comp. Sci. 29 (1984) 309-324.
4
 
5
[Friedman et al. 84] Friedman, D. P., Haynes, C. T., Kohlbecker, E., and Wand, M. "The Scheme 84 Reference Manual" Indiana University Computer Science Department Technical Report No. 153 (March, 1984).
6
 
7
 
8
[Hindley 69] Hindley, R. "The Principal Type-Scheme of an Object in Combinatory Logic," Trans. Am. Math. Soc. 146 (1969) 29-60.
 
9
[Hindley 83a] Hindley, R. "The Completeness Theorem for Typing ¿-Terms" Theoret. Comp. Sci. 22 (1983) 1-17.
 
10
[Hindley 83b] Hindley, R. "Curry's Type-rules are Complete with Respect to the F-Semantics Too" Theoret. Comp. Sci. 22 (1983) 127-133.
 
11
 
12
[Kahn, MacQueen, & Plotkin 84] Kahn, G., MacQueen, D. B., & Plotkin, G. D., (Eds.) Semantics of Data Types: Proceedings, Lecture Notes in Computer Science, Volume 173, Springer-Verlag, 1984.
 
13
[Martin-Löf 79] Martin-Löf, P. "Constructive Mathematics and Computer Programming," Proc. 6th Intl. Congress for Logic, Methodology, and Philosophy of Science, (Hannover, August, 1979).
 
14
 
15
[Milner 78] Milner, R. "A Theory of Type Polymorphism in Programming," J. Comp. & Sys. Sci. 17 (1978), 348-375.
 
16
[Strachey 73] Strachey, C. "The Varieties of Programming Language," Oxford University Computing Laboratory, Technical Monograph PRG-10 (1973).
17
18