The concept of a supercompiler
ACM Transactions on Programming Languages and Systems (TOPLAS) - The MIT Press scientific computation series
Unfold/fold program transformations
Algebraic methods in semantics
Partial evaluation and automatic program generation
Partial evaluation and automatic program generation
Proving congruence of bisimulation in functional programming languages
Information and Computation
Proving the correctness of recursion-based automatic program transformations
TAPSOFT '95 Selected papers from the 6th international joint conference on Theory and practice of software development
Bisimilarity as a theory of functional programming
Theoretical Computer Science - Special issue on mathematical foundations of programming semantics
A Transformation System for Developing Recursive Programs
Journal of the ACM (JACM)
Deforestation: Transforming Programs to Eliminate Trees
ESOP '88 Proceedings of the 2nd European Symposium on Programming
Partial Deduction and Driving are Equivalent
PLILP '94 Proceedings of the 6th International Symposium on Programming Language Implementation and Logic Programming
A System for Proving Equivalences of Recursive Programs
Proceedings of the 5th Conference on Automated Deduction
An unfold/fold transformation framework for definite logic programs
ACM Transactions on Programming Languages and Systems (TOPLAS)
A theory of totally correct logic program transformations
Proceedings of the 2004 ACM SIGPLAN symposium on Partial evaluation and semantics-based program manipulation
Distillation: extracting the essence of programs
Proceedings of the 2007 ACM SIGPLAN symposium on Partial evaluation and semantics-based program manipulation
Environmental bisimulations for higher-order languages
ACM Transactions on Programming Languages and Systems (TOPLAS)
Extracting the essence of distillation
PSI'09 Proceedings of the 7th international Andrei Ershov Memorial conference on Perspectives of Systems Informatics
Proving the correctness of unfold/fold program transformations using bisimulation
PSI'11 Proceedings of the 8th international conference on Perspectives of System Informatics
Hi-index | 0.00 |
In this paper, we provide an improved basis for the "distillation" program transformation. It is known that superlinear speedups can be obtained using distillation, but cannot be obtained by other earlier automatic program transformation techniques such as deforestation, positive supercompilation and partial evaluation. We give distillation an improved semantic basis, and explain how superlinear speedups can occur.