succeeds if the arguments cannot be matched
OPERATOR op(700,xfx,\=). PREDICATE \=(void,void). \=(X,Y) :- not X=Y.
X \= continue
\=(Term1,Term2) (x,x) Term1 \= Term2 (x,x)
void(Term1) (x) Term1 to be examined
void(Term2) (X) Term2 to be examined
This is a standard prolog built-in. ' \=' succeeds, if Term1 cannot be matched with Term2. Note, that because of this '\=' will never instantiate any variables contained.
read(X), ( X \= continue, ! ; integer(X), write("Integer"),nl,fail ).
No runtime errors.
prolog-process, client-server, object