A copy of this work was available on the public web and has been preserved in the Wayback Machine. The capture dates from 2018; you can also visit the original URL.
The file type is application/pdf
.
Filters
Flow-Directed Closure Conversion for Typed Languages
[chapter]
2000
Lecture Notes in Computer Science
This paper presents a new closure conversion algorithm for simply-typed languages. We have have implemented the algorithm as part of MLton, a whole-program compiler for Standard ML (SML). ...
MLton then performs closure conversion to produce a first-order, simply-typed program. ...
Source and Target Languages We illustrate our flow-directed closure conversion translation using the source language shown on the left-hand side of Figure 1 . ...
doi:10.1007/3-540-46425-5_4
fatcat:cs6f62c4nfh2dhhseehscnkw6a
A typed intermediate language for flow-directed compilation
[chapter]
1997
Lecture Notes in Computer Science
We present a typed intermediate language λ CIL for optimizing compilers for function-oriented and polymorphically typed programming languages (e.g., ML). ...
A novel formulation of intersection and union types supports encoding flow information in the typed program representation. This flow information can direct optimization. ...
tually convenient for specification, for implementation purposes a considerable size savings can be obtained by using a typed calculus with intersection and union types in the style of [31] . ...
doi:10.1007/bfb0030639
fatcat:7pzxmmzi4vhczkwh4qohppk44e
Strongly typed flow-directed representation transformations (extended abstract)
1997
Proceedings of the second ACM SIGPLAN international conference on Functional programming - ICFP '97
We present a new framework for transforming data representations in a strongly typed intermediate language. ...
As an instance of our framework, we provide a function representation transformation that encompasses both closure conversion and inlining. Our framework is adaptable to data other than functions. ...
We would also like to thank our fellow Church Project members for their support and encouragement, especially Assaf Kfoury and Glenn Holloway. ...
doi:10.1145/258948.258952
dblp:conf/icfp/DimockMTW97
fatcat:oj64s4pzm5h63myueryrz2s5lu
A Categorical and Graphical Treatment of Closure Conversion
1999
Electronical Notes in Theoretical Computer Science
This paper gives a formal basis for the closure conversion phase of functional programming languages with imperative features, using a graphical semantics for the language. ...
Using closure conversion, we can prove normalization results for both normal forms. Thus, we obtain sound algorithms for compiling the language into either procedural or object-oriented code. ...
Hannan [6] has shown that typed closure conversion can be verified in LF [7] . ...
doi:10.1016/s1571-0661(04)80090-2
fatcat:cdo23n7smvfjpkg3tvdxrbecri
Particpants' Proceedings on the Workshop: Types for Program Analysis
1995
DAIMI Report Series
languages,</p><p>- the role of effects, polymorphism, conjunction/disjunction types, dependent types etc.in specification of analyses,</p><p>- algorithmic tools and methods for solving general classes ...
The title of the workshop, "Types for Program Analysis´´, was motivated by the recent trend of letting the presentation and development of program analyses be influenced by annotated type systems, effect ...
Reverse flow refers to type information that flows both with and counter to the direction of value flow. ...
doi:10.7146/dpb.v24i493.7021
fatcat:lmukdqmlbfabppmrrnczbslyxe
Bootstrapping higher-order program transformers from interpreters
1996
Proceedings of the 1996 ACM symposium on Applied Computing - SAC '96
The generated transformers are strictly more powerful than the partial evaluators used for their generation. ...
We have generated higher-order online partial evaluators, optimizing closure converters, and converters to first-order tail form. The latter can serve as the middle end of a compiler. ...
We study different types of interpreters for a strict, higher-order functional language, and show how to use different partial evaluators to achieve closure conversion, higher-order removal, conversion ...
doi:10.1145/331119.331417
dblp:conf/sac/SperberGT96
fatcat:4y3w7di4jbc2lkx27ifr4swoly
A Rational Deconstruction of Landin's SECD Machine
2003
BRICS Report Series
Landin's SECD machine was the first abstract machine for the lambda-calculus viewed as a programming language. ...
The deconstruction and reconstructions are transformational: they are based on equational reasoning and on a combination of simple program transformations--mainly closure conversion, transformation into ...
Thanks are also due to Harry Mairson, John Reynolds, and Mitchell Wand for their input about the title as well as for their encouraging words. ...
doi:10.7146/brics.v10i33.21801
fatcat:2jp7naravvfbho2wh2wo6mwq7a
Functioning without closure
2001
Proceedings of the sixth ACM SIGPLAN international conference on Functional programming - ICFP '01
The CIL compiler for core Standard ML compiles whole ML programs using a novel typed intermediate language that supports the generation of type-safe customized data representations. ...
Notable exceptions are selective defunctionalization, a function representation strategy that often achieves significant customization benefits via aggressive pollution removal, and a simple form of flow-directed ...
We thank the referees for their excellent questions and suggestions; we have incorporated as many as space permits. Thanks to Nausheen Eusuf for helping us to achieve closure on our title. ...
doi:10.1145/507638.507640
fatcat:z6tgu7zoinbknhskkkx3uh5k3a
Functioning without closure
2001
Proceedings of the sixth ACM SIGPLAN international conference on Functional programming - ICFP '01
The CIL compiler for core Standard ML compiles whole ML programs using a novel typed intermediate language that supports the generation of type-safe customized data representations. ...
Notable exceptions are selective defunctionalization, a function representation strategy that often achieves significant customization benefits via aggressive pollution removal, and a simple form of flow-directed ...
We thank the referees for their excellent questions and suggestions; we have incorporated as many as space permits. Thanks to Nausheen Eusuf for helping us to achieve closure on our title. ...
doi:10.1145/507635.507640
dblp:conf/icfp/DimockWMTW01
fatcat:hg6ryn22u5b4hjcdcpylcbolda
Functioning without closure
2001
SIGPLAN notices
The CIL compiler for core Standard ML compiles whole ML programs using a novel typed intermediate language that supports the generation of type-safe customized data representations. ...
Notable exceptions are selective defunctionalization, a function representation strategy that often achieves significant customization benefits via aggressive pollution removal, and a simple form of flow-directed ...
We thank the referees for their excellent questions and suggestions; we have incorporated as many as space permits. Thanks to Nausheen Eusuf for helping us to achieve closure on our title. ...
doi:10.1145/507669.507640
fatcat:klnpxhyyuvg4bpskt56b5ehboy
Control-Flow Analysis of Functional Programs
2007
BRICS Report Series
We present a survey of control-flow analysis of functional programs, which has been the subject of extensive investigation throughout the past 25 years. ...
In this paper we survey control-flow analysis of functional programs by structuring the multitude of formulations and approximations and comparing them. ...
Jensen and Janus Dam Nielsen for comments on an earlier version of this survey, and to Fritz Henglein and David Van Horn for insightful discussions on control-flow analysis. ...
doi:10.7146/brics.v14i18.21936
fatcat:hgc2ce533zdwrgbprp45axhsce
Control-flow analysis of functional programs
2012
ACM Computing Surveys
We present a survey of control-flow analysis of functional programs, which has been the subject of extensive investigation throughout the past 30 years. ...
In this paper, we survey control-flow analysis of functional programs by structuring the multitude of formulations and approximations and comparing them. ...
Jensen and Janus Dam Nielsen for comments on an earlier version of this survey, and to Fritz Henglein and David Van Horn for insightful discussions on control-flow analysis. ...
doi:10.1145/2187671.2187672
fatcat:wi4ymuhqgjh6no35q6qvnaf2tm
First-class nonstandard interpretations by opening closures
2007
Proceedings of the 34th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages - POPL '07
Just as CPS conversion is a non-local but purely syntactic transformation that can eliminate references to call/cc, closure conversion is a non-local but purely syntactic transformation that can eliminate ...
Just as call/cc is a non-referentiallytransparent mechanism that reifies the continuations that are only implicit in programs written in direct style, map-closure is a nonreferentially-transparent mechanism ...
Incorporating map-closure into a statically typed language would be an interesting topic for future research, as would be the formulation of a referentially-transparent construct for first-class nonstandard ...
doi:10.1145/1190216.1190230
dblp:conf/popl/SiskindP07
fatcat:6xyuf23vufdwxniunf56rjlnwa
First-class nonstandard interpretations by opening closures
2007
SIGPLAN notices
Just as CPS conversion is a non-local but purely syntactic transformation that can eliminate references to call/cc, closure conversion is a non-local but purely syntactic transformation that can eliminate ...
Just as call/cc is a non-referentiallytransparent mechanism that reifies the continuations that are only implicit in programs written in direct style, map-closure is a nonreferentially-transparent mechanism ...
Incorporating map-closure into a statically typed language would be an interesting topic for future research, as would be the formulation of a referentially-transparent construct for first-class nonstandard ...
doi:10.1145/1190215.1190230
fatcat:acdlb5ce6vbh3bjsdeozzkiutq
Confined gradual typing
2014
Proceedings of the 2014 ACM International Conference on Object Oriented Programming Systems Languages & Applications - OOPSLA '14
Gradual typing combines static and dynamic typing flexibly and safely in a single programming language. ...
some flexibility for more reliability and performance. ...
Acknowledgments We thank the OOPSLA reviewers and the program committee for their insightful comments and suggestions. ...
doi:10.1145/2660193.2660222
dblp:conf/oopsla/AllendeFGT14
fatcat:ire7gsczmrbbfnldy3q6tycpki
« Previous
Showing results 1 — 15 out of 41,242 results