Inversion by Partial Evaluation: A Reversible Interpreter Experiment
Abstract
A computational limit of combining partial evaluation and program inversion is investigated. Using a reversible Turing machine interpreter, we show that the first Futamura and inversion projections can produce not only functionally but also textually equivalent programs. The construction of the interpreter in a reversible flowchart language is shown in full. Insights are provided on the practical interplay between reversible interpreters, program inverters, and partial evaluators. We conclude that both projections must be included in the program transformation toolbox.
- Publication:
-
arXiv e-prints
- Pub Date:
- December 2024
- DOI:
- arXiv:
- arXiv:2412.03122
- Bibcode:
- 2024arXiv241203122G
- Keywords:
-
- Computer Science - Programming Languages;
- Computer Science - Formal Languages and Automata Theory;
- D.3.4;
- F.1.1;
- F.3.2
- E-Print:
- In Proceedings PT 2024, arXiv:2412.01856. Dedicated to Peter Thiemann on the Occasion of his 60th Birthday