Partial evaluation of metaprograms in a ``multiple worlds'' logic language (Q1108779)
From MaRDI portal
scientific article
Language | Label | Description | Also known as |
---|---|---|---|
English | Partial evaluation of metaprograms in a ``multiple worlds'' logic language |
scientific article |
Statements
Partial evaluation of metaprograms in a ``multiple worlds'' logic language (English)
0 references
1988
0 references
This paper describes a partial evaluation system specifically designed to be used as an automatic compilation tool for metaprograms in a knowlege base management system (EPSILON) based on Prolog. EPSILON main underlying concepts are the extension of Prolog with theories (``multiple worlds'') and the use of metaprogramming as the basic technique to define new inference engines and tools. Our partial evaluator is oriented towards theories and metainterpreter specialization. Being designed to be used as an automatic compiler, it does not require declarations from the user to control the unfolding process. It handles full Prolog and provides also an elegant solution to the problem of the partial evaluation of incomplete and self-modifying programs, by exploiting the multiple worlds feature added to Prolog. EPSILON partial evaluation system turned out to be a very useful and powerful tool to combine the low cost and the flexibility of metaprogramming with the performance requirements of a practical knowledge based system.
0 references
logic programming
0 references
metainterpreter
0 references
KBMS
0 references
partial evaluation
0 references
automatic compilation
0 references
knowlege base management system
0 references
Prolog
0 references
multiple worlds
0 references
metaprogramming
0 references
knowledge based system
0 references