Results 1 
6 of
6
Typed closure conversion
 In Proceedings of the 23th Symposium on Principles of Programming Languages (POPL
, 1996
"... The views and conclusions contained in this document are those of the authors and should not be interpreted as representing o cial policies, either expressed or implied, of the Advanced Research Projects Agency or the U.S. Government. Any opinions, ndings, and conclusions or recommendations expresse ..."
Abstract

Cited by 163 (21 self)
 Add to MetaCart
(Show Context)
The views and conclusions contained in this document are those of the authors and should not be interpreted as representing o cial policies, either expressed or implied, of the Advanced Research Projects Agency or the U.S. Government. Any opinions, ndings, and conclusions or recommendations expressed in this material are those of the We study the typing properties of closure conversion for simplytyped and polymorphiccalculi. Unlike most accounts of closure conversion, which only treat the untypedcalculus, we translate welltyped source programs to welltyped target programs. This allows later compiler phases to take advantage of types for representation analysis and tagfree garbage collection, and it facilitates correctness proofs. Our account of closure conversion for the simplytyped language takes advantage of a simple model of objects by mapping closures to existentials. Closure conversion for the polymorphic language requires additional type machinery, namely translucency in the style of Harper and Lillibridge's module calculus, to express the type of a closure.
Process Semantics of Graph Reduction
 Proc. CONCUR '95, volume 962 of Lecture Notes in Computer Science
, 1995
"... This paper introduces an operational semantics for callbyneed reduction in terms of Milner's ßcalculus. The functional programming interest lies in the use of ßcalculus as an abstract yet realistic target language. The practical value of the encoding is demonstrated with an outline for a pa ..."
Abstract

Cited by 6 (1 self)
 Add to MetaCart
(Show Context)
This paper introduces an operational semantics for callbyneed reduction in terms of Milner's ßcalculus. The functional programming interest lies in the use of ßcalculus as an abstract yet realistic target language. The practical value of the encoding is demonstrated with an outline for a parallel code generator. From a theoretical perspective, the ßcalculus representation of computational strategies with shared reductions is novel and solves a problem posed by Milner [13]. The compactness of the process calculus presentation makes it interesting as an alternative definition of callbyneed. Correctness of the encoding is proved with respect to the callbyneed calculus of Ariola et al. [3]. 1 Introduction Graph reduction of extended calculi has become a mature field of applied research. The efficiency of the implementations is due in great measure to a technique known as `sharing', whereby argument values are computed (at most) once and then memoized for future reference. Both...
Abstract
"... We study the typing properties of closure conversion for simplytyped and polymorphiccalculi. Unlike mostaccounts of closure conversion, which only treat the untypedcalculus, we translate welltyped source programs to welltyped target programs. This allows later compiler phases to take advantage o ..."
Abstract
 Add to MetaCart
We study the typing properties of closure conversion for simplytyped and polymorphiccalculi. Unlike mostaccounts of closure conversion, which only treat the untypedcalculus, we translate welltyped source programs to welltyped target programs. This allows later compiler phases to take advantage of types for representation analysis and tagfree garbage collection, and it facilitates correctness proofs. Our account of closure conversion for the simplytyped language takes advantage of a simple model of objects by mapping closures to existentials. Closure conversion for the polymorphic language requires additional type machinery, namely translucency in the style of Harper and Lillibridge's module calculus, to express the type of a closure.
Formalising strong normalisation proofs of the explicit substitution calculi in ALF
"... Explicit substitution calculi have become very fashionable in the last decade. The reason is that substitution calculi bridge theory and implementation and enable control over evaluation steps and strategies. Of the most important questions of explicit substitution calculi is that of the termination ..."
Abstract
 Add to MetaCart
(Show Context)
Explicit substitution calculi have become very fashionable in the last decade. The reason is that substitution calculi bridge theory and implementation and enable control over evaluation steps and strategies. Of the most important questions of explicit substitution calculi is that of the termination of the underlying calculus of substitution (without fireduction rule). For this reason, one finds with every new calculus of explicit substitution, a section devoted to the termination of substitutions. Those proofs of termination fall under two categories. Proofs that are easy because a decreasing measure can be established and proofs that are difficult because such a decreasing measure is not easy to establish. Another fashionable subject has been the checking of proofs using a proof checker. This is useful because some proofs can be intricate and hard to believe if they are not proof checked. In this paper, we will choose two different styles of explicit substitution calculi oe [1] and...