Logimix: A Self-Applicable Partial Evaluator for Prolog

13 years 9 months ago
Logimix: A Self-Applicable Partial Evaluator for Prolog
We present a self-applicable partial evaluator for a large subset of full Prolog. The partial evaluator, called Logimix, is the result of applying our experience from partial evaluation of functional languages to Prolog. Great care is taken to preserve the operational semantics of the partially evaluated programs, including the effects of non-logical predicates and side effects. At the same time, we also want the partial evaluator to handle large programs in reasonable time. This has led us to use simple strategies whenever possible, in particular we let most of the choices made during partial evaluation depend on the results of a prior binding time analysis. We have successfully applied Logimix to interpreters, yielding compiled programs where virtually all interpretation overhead is removed. Self-application of Logimix yields stand-alone compilers and a compiler generator. To obtain a clear distinction between the different meta-levels when doing self-application, input programs to ...
Torben Æ. Mogensen, Anders Bondorf
Added 10 Aug 2010
Updated 10 Aug 2010
Type Conference
Year 1992
Authors Torben Æ. Mogensen, Anders Bondorf
Comments (0)