EpilogJS
What
versus
How
 

operatorp


operatorp(expression) → boolean

The subroutine operator takes a constant as argument and determines whether or not it is the internal representation of an operator in Epilog. If the specified expression corresponds to an operator, operatorp returns true>; otherwise, it returns false.

Call: operatorp('nil') Exit: true Call: operatorp('cons') Exit: true Call: operatorp('not') Exit: true Call: operatorp('and') Exit: true Call: operatorp('or') Exit: true Call: operatorp('definition') Exit: true Call: operatorp('rule') Exit: true Call: operatorp('transition') Exit: true Call: operatorp('a23') Exit: false Call: operatorp('plus') Exit: false Call: operatorp('setofall') Exit: false

Operators in the internal representation of Epilog sentences are spelled with ordinary symbols, so that programmers can write sentences about sentences in terms of their semantic structure rather than their string representation. For example, the internal representation of the Epilog sentence r(X) :- p(X) & ~q(X) is rule(r(X),p(X),not(q(X))). See read and grind for interconverting between internal and external representations.




Comments and complaints to genesereth@stanford.edu.