Three partition refinement algorithms
SIAM Journal on Computing
Partial evaluation and automatic program generation
Partial evaluation and automatic program generation
Realistic compilation by partial evaluation
PLDI '96 Proceedings of the ACM SIGPLAN 1996 conference on Programming language design and implementation
Advanced compiler design and implementation
Advanced compiler design and implementation
A Transformation System for Developing Recursive Programs
Journal of the ACM (JACM)
Variations on the Common Subexpression Problem
Journal of the ACM (JACM)
Static and Dynamic Program Compilation by Interpreter Specialization
Higher-Order and Symbolic Computation
Proving correctness of compiler optimizations by temporal logic
POPL '02 Proceedings of the 29th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
A Calculus of Communicating Systems
A Calculus of Communicating Systems
Automatically proving the correctness of compiler optimizations
PLDI '03 Proceedings of the ACM SIGPLAN 2003 conference on Programming language design and implementation
Simple relational correctness proofs for static analyses and program transformations
Proceedings of the 31st ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Transformation by interpreter specialisation
Science of Computer Programming - Special issue on program transformation
A monadic approach for avoiding code duplication when staging memoized functions
Proceedings of the 2006 ACM SIGPLAN symposium on Partial evaluation and semantics-based program manipulation
Imperative-program transformation by instrumented-interpreter specialization
Higher-Order and Symbolic Computation
Proceedings of the 15th ACM SIGPLAN international conference on Functional programming
Annotation of logic programs for independent and-parallelism by partial evaluation*
Theory and Practice of Logic Programming
Hi-index | 0.00 |
We implement strength reduction and loop-invariant code motion by specializing instrumented interpreters; we define a novel program transformation that uses bisimulation to identify and remove code duplication in residual programs; and we discover that some simple classical optimizations, notably constant-propagation, seemingly do not lend themselves to implementation by specialization of instrumented interpreters.