by Robert Harper, Mark Lillibridge
LISP and Symbolic Computation
http://www.hpl.hp.com/personal/Mark_Lillibridge/PolyCPST/cw92.PDF
Add To MetaCart
Abstract:
Meyer and Wand established that the type of a term in the simply typed λ-calculus may be related in a straightforward manner to the type of its call-by-value CPS transform. This typing property may be extended to Scheme-like continuation-passing primitives, from which the soundness of these extensions follows. We study the extension of these results to the Damas-Milner polymorphic type assignment system under both the call-by-value and call-by-name interpretations. We obtain CPS transforms for the call-by-value interpretation, provided that the polymorphic let is restricted to values, and for the call-by-name interpretation with no restrictions. We prove that there is no call-by-value CPS transform for the full Damas-Milner language that validates the Meyer-Wand typing property and is equivalent to the standard call-by-value transform up to βη-conversion. 1
Citations
|
1463
|
The Definition of Standard ML
– Milner, Tofte, et al.
- 1990
|
|
393
|
A syntactic approach to type soundness
– Wright, Felleisen
- 1994
|
|
332
|
D.: LCF considered as a programming language
– Plotkin
- 1977
|
|
225
|
Definitional interpreters for higher-order programming languages
– Reynolds
- 1998
|
|
217
|
Principal type schemes for functional programs
– Damas, Milner
- 1982
|
|
162
|
A formulae-as-types notion of control
– Griffin
- 1990
|
|
150
|
Reasoning about programs in continuation-passing style
– Sabry, Felleisen
- 1992
|
|
131
|
Call-by-name, call-by-value, and the lambda calculus
– Plotkin
- 1975
|
|
110
|
Type inference for polymorphic references
– Tofte
- 1990
|
|
102
|
A syntactic theory of sequential control
– Felleisen, Friedman, et al.
- 1987
|
|
93
|
Typing first-class continuations in ML
– Duba, Harper, et al.
- 1991
|
|
71
|
Continuation semantics in typed lambda calculi (summary
– Meyer, Wand
- 1985
|
|
67
|
Explicit polymorphism and CPS conversion
– Harper, Lillibridge
- 1993
|
|
52
|
Polymorphic type inference and assignment
– Leroy, Weis
- 1991
|
|
47
|
A type-inference approach to reduction properties and semantics of polymorphic expressions
– Mitchell
- 1990
|
|
44
|
On the relation between direct and continuation semantics
– Reynolds
- 1974
|
|
33
|
A theory of type polymorphism in programming languages
– Milner
- 1978
|
|
25
|
A scheme for a higher-level semantic algebra
– Clinger, Friedman, et al.
- 1985
|
|
12
|
Thunks (continued
– Danvy, Hatcliff
- 1992
|
|
5
|
Typing first-class continuations in ML. Revised and expanded version of [8]. To appear, Journal of Functional Programming
– Harper, Duba, et al.
|
|
3
|
Private communication
– Griffin
- 1992
|
|
2
|
Announcement on the types electronic forum
– Harper, Lillibridge
- 1991
|