Performance and evaluation of LISP systems
Performance and evaluation of LISP systems
Control flow analysis in scheme
PLDI '88 Proceedings of the ACM SIGPLAN 1988 conference on Programming Language design and Implementation
A new approach to procedures with variable arity
Lisp and Symbolic Computation
Control-flow analysis of higher-order languages of taming lambda
Control-flow analysis of higher-order languages of taming lambda
Two-level functional languages
Two-level functional languages
Partial evaluation and automatic program generation
Partial evaluation and automatic program generation
Polyvariant binding-time analysis for applicative languages
PEPM '93 Proceedings of the 1993 ACM SIGPLAN symposium on Partial evaluation and semantics-based program manipulation
The essence of compiling with continuations
PLDI '93 Proceedings of the ACM SIGPLAN 1993 conference on Programming language design and implementation
Space-efficient closure representations
LFP '94 Proceedings of the 1994 ACM conference on LISP and functional programming
An efficient implementation of multiple return values in Scheme
LFP '94 Proceedings of the 1994 ACM conference on LISP and functional programming
Automatic generation and management of interprocedural program analyses
POPL '93 Proceedings of the 20th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Set-based analysis of ML programs
LFP '94 Proceedings of the 1994 ACM conference on LISP and functional programming
Fixpoint computation for polyvariant static analyses of higher-order applicative programs
ACM Transactions on Programming Languages and Systems (TOPLAS)
Abstract analysis and optimization of scheme
Abstract analysis and optimization of scheme
A unified treatment of flow analysis in higher-order languages
POPL '95 Proceedings of the 22nd ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Safety analysis versus type inference
Information and Computation
Storage use analysis and its applications
Proceedings of the first ACM SIGPLAN international conference on Functional programming
Lightweight closure conversion
ACM Transactions on Programming Languages and Systems (TOPLAS)
The effectiveness of flow analysis for inlining
ICFP '97 Proceedings of the second ACM SIGPLAN international conference on Functional programming
POPL '77 Proceedings of the 4th ACM SIGACT-SIGPLAN symposium on Principles of programming languages
Semantic Analysis of Interval Congruences
Proceedings of the International Conference on Formal Methods in Programming and Their Applications
Abstract Compilation: A New Implementation Paradigm for Static Analysis
CC '96 Proceedings of the 6th International Conference on Compiler Construction
The calculi of lambda-nu-cs conversion: a syntactic theory of control and state in imperative higher-order programming languages
The theory and practice of semantic program analysis for higher-order functional programming languages
A demand-driven adaptive type analysis
Proceedings of the seventh ACM SIGPLAN international conference on Functional programming
Higher-order control-flow analysis in retrospect: lessons learned, lessons abandoned
ACM SIGPLAN Notices - Best of PLDI 1979-1999
Flow graphs for testing sequential erlang programs
ERLANG '04 Proceedings of the 2004 ACM SIGPLAN workshop on Erlang
Type-sensitive control-flow analysis
Proceedings of the 2006 workshop on ML
Flow Analysis, Linearity, and PTIME
SAS '08 Proceedings of the 15th international symposium on Static Analysis
Control-flow analysis of function calls and returns by abstract interpretation
Proceedings of the 14th ACM SIGPLAN international conference on Functional programming
IFL'09 Proceedings of the 21st international conference on Implementation and application of functional languages
Flow-sensitive type recovery in linear-log time
Proceedings of the 2011 ACM international conference on Object oriented programming systems languages and applications
Control-flow analysis of function calls and returns by abstract interpretation
Information and Computation
Control-flow analysis of functional programs
ACM Computing Surveys (CSUR)
Static analysis of complex software systems implemented in erlang
CEFP'11 Proceedings of the 4th Summer School conference on Central European Functional Programming School
Higher-order symbolic execution via contracts
Proceedings of the ACM international conference on Object oriented programming systems languages and applications
A structural soundness proof for shivers's escape technique: a case for galois connections
SAS'12 Proceedings of the 19th international conference on Static Analysis
Hi-index | 0.00 |
A flow analysis collects data-flow and control-flow information about programs. A compiler can use this information to enable optimizations. The analysis described in this article unifies and extends previous work on flow analysis for higher-order languages supporting assignment and control operators. The analysis is abstract interpretation based and is parameterized over two polyvariance operators and a projection operator. These operators are used to regulate the speed and accuracy of the analysis. An implementation of the analysis is incorporated into and used in a production Scheme compiler. The analysis can process any legal Scheme program without modification. Others have demonstrated that a 0CFA analysis can enables the optimizations, but a 0CFA analysis is O(n)3). An O(n) instantiation of our analysis successfully enables the optimization of closure representations and procedure calls. Experiments with the cheaper instantiation show that it is as effective as 0CFA for these optimizations.