Partial evaluation of metaprograms in a ``multiple worlds'' logic language (Q1108779): Difference between revisions

From MaRDI portal
Importer (talk | contribs)
Created a new Item
 
Added link to MaRDI item.
links / mardi / namelinks / mardi / name
 

Revision as of 03:08, 31 January 2024

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
    0 references
    0 references
    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
    0 references
    0 references
    0 references
    0 references
    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