Filters








41,242 Hits in 5.1 sec

Flow-Directed Closure Conversion for Typed Languages [chapter]

Henry Cejtin, Suresh Jagannathan, Stephen Weeks
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]

J. B. Wells, Allyn Dimock, Robert Muller, Franklyn Turbak
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)

Allyn Dimock, Robert Muller, Franklyn Turbak, J. B. Wells
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

Ralf Schweimeier, Alan Jeffrey
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

Hanne Riis Nielson, Kirsten Lackner Solberg
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

Michael Sperber, Robert Glück, Peter Thiemann
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

Olivier Danvy
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

Allyn Dimock, Ian Westmacott, Robert Muller, Franklyn Turbak, J. B. Wells
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

Allyn Dimock, Ian Westmacott, Robert Muller, Franklyn Turbak, J. B. Wells
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

Allyn Dimock, Ian Westmacott, Robert Muller, Franklyn Turbak, J. B. Wells
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

Jan Midtgaard
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

Jan Midtgaard
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

Jeffrey Mark Siskind, Barak A. Pearlmutter
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

Jeffrey Mark Siskind, Barak A. Pearlmutter
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

Esteban Allende, Johan Fabry, Ronald Garcia, Éric Tanter
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