An experiment in partial evaluation: the generation of a compiler generator
Proc. of the first international conference on Rewriting techniques and applications
Projections for strictness analysis
Proc. of a conference on Functional programming languages and computer architecture
A domain equation for bisimulation
Information and Computation
Uniform ideals and strictness analysis
Proceedings of the 18th international colloquium on Automata, languages and programming
Lazy functional languages: abstract interpretation and compilation
Lazy functional languages: abstract interpretation and compilation
Handbook of theoretical computer science (vol. B)
Binding time analysis: a new PERspective
PEPM '91 Proceedings of the 1991 ACM SIGPLAN symposium on Partial evaluation and semantics-based program manipulation
Reasoning about simple and exhaustive demand in higher-order lazy languages
Proceedings of the 5th ACM conference on Functional programming languages and computer architecture
Strictness analysis in logical form
Proceedings of the 5th ACM conference on Functional programming languages and computer architecture
The tensor product in Wadler's analysis of lists
ESOP'92 Symposium proceedings on 4th European symposium on programming
Partial evaluation and automatic program generation
Partial evaluation and automatic program generation
Strictness analysis via abstract interpretation for recursively defined types
Information and Computation
Soft typing with conditional types
POPL '94 Proceedings of the 21st ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Deriving algorithms from type inference systems: application to strictness analysis
POPL '94 Proceedings of the 21st ACM SIGPLAN-SIGACT symposium on Principles of programming languages
The tensor product in Wadler's analysis of lists
ESOP'92 Selected papers of the symposium on Fourth European symposium on programming
Improving abstract interpretations by systematic lifting to the powerset
ILPS '94 Proceedings of the 1994 International Symposium on Logic programming
Intersection and union types: syntax and semantics
Information and Computation
Proving properties of programs defined over recursive data structures
PEPM '95 Proceedings of the 1995 ACM SIGPLAN symposium on Partial evaluation and semantics-based program manipulation
Using abstract interpretation to define a strictness type inference system
PEPM '95 Proceedings of the 1995 ACM SIGPLAN symposium on Partial evaluation and semantics-based program manipulation
Lazy type inference and program analysis
ESOP '94 Selected papers of ESOP '94, the 5th European symposium on Programming
Data flow analysis of applicative programs using minimal function graphs
POPL '86 Proceedings of the 13th ACM SIGACT-SIGPLAN symposium on Principles of programming languages
Flow Analysis of Computer Programs
Flow Analysis of Computer Programs
Systematic design of program analysis frameworks
POPL '79 Proceedings of the 6th ACM SIGACT-SIGPLAN symposium on Principles of programming languages
Strictness Logic and Polymorphic Invariance
TVER '92 Proceedings of the Second International Symposium on Logical Foundations of Computer Science
On the Relation between Direct and Continuation Semantics
Proceedings of the 2nd Colloquium on Automata, Languages and Programming
Higher-Order Chaotic Iteration Sequences
PLILP '93 Proceedings of the 5th International Symposium on Programming Language Implementation and Logic Programming
Strictness Properties of Lazy Algebraic Datatypes
WSA '93 Proceedings of the Third International Workshop on Static Analysis
An Iterative Powerdomain Construction
Proceedings of the 1989 Glasgow Workshop on Functional Programming
A Note on Powerdomains and Modalitiy
Proceedings of the 1983 International FCT-Conference on Fundamentals of Computation Theory
Calculating properties of programs by valuations on specific models
Proceedings of ACM conference on Proving assertions about programs
Inference of polymorphic and conditional strictness properties
POPL '98 Proceedings of the 25th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
An Improved Disjunctive Strictness Analysis for Lazy Functional Languages
MFCS '99 Proceedings of the 24th International Symposium on Mathematical Foundations of Computer Science
Domain Compression for Complete Abstractions
VMCAI 2003 Proceedings of the 4th International Conference on Verification, Model Checking, and Abstract Interpretation
Effective Strictness Analysis with HORN Constraints
SAS '01 Proceedings of the 8th International Symposium on Static Analysis
The essence of computation
Modular control-flow analysis with rank 2 intersection types
Mathematical Structures in Computer Science
Deriving escape analysis by abstract interpretation
Higher-Order and Symbolic Computation
Static analysis, abstract interpretation and verification in (constraint logic) programming
A 25-year perspective on logic programming
Hi-index | 0.00 |
We describe how binding-time, data-flow, and strictness analyses for languages with higher-order functions and algebraic data types can be obtained by instantiating a generic program logic and axiomatization of the properties analyzed for. A distinctive feature of the analyses is that disjunctions of program properties are represented exactly. This yields analyses of high precision and provides a logical characterization of abstract interpretations involving tensor products and uniform properties of recursive data structures. An effective method for proving properties of a program based on fixed-point iteration is obtained by grouping logically equivalent formulae of the same type into equivalence classes, obtaining a lattice of properties of that type, and then defining an abstract interpretation over these lattices. We demonstrate this in the case of strictness analysis by proving that the strictness abstract interpretation of a program is the equivalence class containing the strongest property provable of the program in the strictness logic.