OOPSLA '87 Conference proceedings on Object-oriented programming systems, languages and applications
Binding time analysis for high order untyped functional languages
LFP '90 Proceedings of the 1990 ACM conference on LISP and functional programming
Object-oriented type inference
OOPSLA '91 Conference proceedings on Object-oriented programming systems, languages, and applications
Automatic autoprojection of recursive equations with global variable and abstract data types
Science of Computer Programming
Automatic autoprojection of higher order recursive equations
ESOP '90 Selected papers from the symposium on 3rd European symposium on programming
Safety analysis versus type inference for partial types
Information Processing Letters
Set based program analysis
Object-oriented type systems
Selective and lightweight closure conversion
POPL '94 Proceedings of the 21st 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
Safety analysis versus type inference
Information and Computation
ECOOP '93 Proceedings of the 7th European Conference on Object-Oriented Programming
Flow Analysis of Lambda Expressions (Preliminary Version)
Proceedings of the 8th Colloquium on Automata, Languages and Programming
A type system equivalent to flow analysis
ACM Transactions on Programming Languages and Systems (TOPLAS)
Componential set-based analysis
Proceedings of the ACM SIGPLAN 1997 conference on Programming language design and implementation
A modular, polyvariant and type-based closure analysis
ICFP '97 Proceedings of the second ACM SIGPLAN international conference on Functional programming
Systematic realisation of control flow analyses for CML
ICFP '97 Proceedings of the second ACM SIGPLAN international conference on Functional programming
Infinitary control flow analysis: a collecting semantics for closure analysis
Proceedings of the 24th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Constraints to stop higher-order deforestation
Proceedings of the 24th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
From polyvariant flow information to intersection and union types
POPL '98 Proceedings of the 25th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Single and loving it: must-alias analysis for higher-order languages
POPL '98 Proceedings of the 25th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Polymorphic splitting: an effective polyvariant flow analysis
ACM Transactions on Programming Languages and Systems (TOPLAS)
Equality-based flow analysis versus recursive types
ACM Transactions on Programming Languages and Systems (TOPLAS)
Trace-Based Abstract Interpretation of Operational Semantics
Lisp and Symbolic Computation
Componential set-based analysis
ACM Transactions on Programming Languages and Systems (TOPLAS)
A Control-Flow Analysis for a Calculus of Concurrent Objects
IEEE Transactions on Software Engineering
Type-based analysis and applications
PASTE '01 Proceedings of the 2001 ACM SIGPLAN-SIGSOFT workshop on Program analysis for software tools and engineering
Propagating differences: an efficient new fixpoint algorithm for distributive constraint systems
Nordic Journal of Computing
Interprocedural Control Flow Analysis
ESOP '99 Proceedings of the 8th European Symposium on Programming Languages and Systems
Flow-Directed Closure Conversion for Typed Languages
ESOP '00 Proceedings of the 9th European Symposium on Programming Languages and Systems
A Modular, Extensible Proof Method for Small-Step Flow Analyses
ESOP '02 Proceedings of the 11th European Symposium on Programming Languages and Systems
Design and Correctness of Program Transformations Based on Control-Flow Analysis
TACS '01 Proceedings of the 4th International Symposium on Theoretical Aspects of Computer Software
The essence of computation
Modular control-flow analysis with rank 2 intersection types
Mathematical Structures in Computer Science
From ML to Ada: Strongly-typed language interoperability via source translation
Journal of Functional Programming
Improving the static analysis of embedded languages via partial evaluation
Proceedings of the ninth ACM SIGPLAN international conference on Functional programming
Science of Computer Programming - Special issue on program transformation
Selectors Make Set-Based Analysis Too Hard
Higher-Order and Symbolic Computation
Modular set-based analysis from contracts
Conference record of the 33rd ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Dynamic state restoration using versioning exceptions
Higher-Order and Symbolic Computation
Static specification inference using predicate mining
Proceedings of the 2007 ACM SIGPLAN conference on Programming language design and implementation
Relating complexity and precision in control flow analysis
ICFP '07 Proceedings of the 12th ACM SIGPLAN international conference on Functional programming
A Calculational Approach to Control-Flow Analysis by Abstract Interpretation
SAS '08 Proceedings of the 15th international symposium on Static Analysis
Exploiting reachability and cardinality in higher-order flow analysis
Journal of Functional Programming
Formalising and Verifying Reference Attribute Grammars in Coq
ESOP '09 Proceedings of the 18th European Symposium on Programming Languages and Systems: Held as Part of the Joint European Conferences on Theory and Practice of Software, ETAPS 2009
COORDINATION '09 Proceedings of the 11th International Conference on Coordination Models and Languages
Control-flow analysis of function calls and returns by abstract interpretation
Proceedings of the 14th ACM SIGPLAN international conference on Functional programming
Optimal interprocedural program optimization: a new framework and its application
Optimal interprocedural program optimization: a new framework and its application
Binding-time analysis by constraint solving a modular and higher-order approach for mercury
LPAR'00 Proceedings of the 7th international conference on Logic for programming and automated reasoning
EigenCFA: accelerating flow analysis with GPUs
Proceedings of the 38th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Family of abstract interpretations for static analysis of concurrent higher-order programs
SAS'11 Proceedings of the 18th international conference on Static analysis
Control-flow analysis of function calls and returns by abstract interpretation
Information and Computation
Testing concurrent systems: an interpretation of intuitionistic logic
FSTTCS '05 Proceedings of the 25th international conference on Foundations of Software Technology and Theoretical Computer Science
Dependence analysis for safe futures
Science of Computer Programming
Control-flow analysis of functional programs
ACM Computing Surveys (CSUR)
Hi-index | 0.00 |
Flow analyses of untyped higher-order functional programs have in the past decade been presented by Ayers, Bondorf, Consel, Jones, Heintze, Sestoft, Shivers, Steckler, Wand, and others. The analyses are usually defined as abstract interpretations and are used for rather different tasks such as type recovery, globalization, and binding-time analysis. The analyses all contain a global closure analysis that computes information about higher-order control-flow. Sestoft proved in 1989 and 1991 that closure analysis is correct with respect to call-by-name and call-by-value semantics, but it remained open if correctness holds for arbitrary beta-reduction.This article answers the question; both closure analysis and others are correct with respect to arbitrary beta-reduction. We also prove a subject-reduction result: closure information is still valid after beta-reduction. The core of our proof technique is to define closure analysis using a constraint system. The constraint system is equivalent to the closure analysis of Bondorf, which in turn is based on Sestoft's.