next up previous contents index
Next: quote/1 and eval/1 Up: Programming in CLP() Previous: The CLP() Operational Model

Meta-programming

   

In the context of Prolog, meta-programming refers to the destruction and construction of rules and terms, and the examination and modification of the rulebase. All of the same issues arise in CLP( tex2html_wrap_inline4020 ). However, some extra facilities are needed because of the special nature of arithmetic terms and constraints. Furthermore, some of the remaining ones must be modified. For example, without such extra facilities and modifications, there is no way that a CLP( tex2html_wrap_inline4020 ) program can distinguish the two terms p(3 - 1) and p(1 + 1) since they are semantically identical.

More specifically, the extra facilities and modifications are needed to:





Alan Borning
Fri Oct 8 12:51:18 PDT 1999