Meta-interpreters and Reflection
Prolog is a homoiconic language and provides many facilities for reflection. Its implicit execution strategy makes it possible to write a concise meta-circular evaluator (also called meta-interpreter) for pure Prolog code. Since Prolog programs are themselves sequences of Prolog terms (:-/2
is an infix operator) that are easily read and inspected using built-in mechanisms (like read/1
), it is easy to write customized interpreters that augment Prolog with domain-specific features.
Read more about this topic: Prolog
Famous quotes containing the word reflection:
“Women generally should be taught that the rough life men must needs lead, in order to be healthy, useful and manly men, would preclude the possibility of a great degree of physical perfection, especially in color. It is not a bad reflection to know that in all probability the human animal has endowments enough without aspiring to be the beauty of all creation as well as the ruler.”
—Caroline Nichols Churchill (1833?)