Results 1 -
1 of
1
An Automatic Partial Evaluator for Full Prolog
, 1991
"... A partial evaluator for Prolog takes a program and a query and returns a program specialized for all instances of that query. The intention is that the generated program will execute more efficiently than the original one for those instances. This thesis presents "Mixtus", an automatic partial evalu ..."
Abstract
-
Cited by 94 (0 self)
- Add to MetaCart
A partial evaluator for Prolog takes a program and a query and returns a program specialized for all instances of that query. The intention is that the generated program will execute more efficiently than the original one for those instances. This thesis presents "Mixtus", an automatic partial evaluator for full Prolog, i.e. including non-logical features such as cut, assert, var, write etc. Mixtus does not need any annotations to guide it in its process, but will automatically generate a program given only an input program and a query. A definition of partial evaluation based on the procedural semantics rather than declarative semantics is presented. A program transformed by Mixtus will behave identically as the original one, including side-effects and the order of the solutions returned. The three basic program transformations "unfolding", "folding" and "definition" are adapted to full Prolog. The most important transformation is "unfolding" which is used by all partial evaluators to...

