This module contains the set of basic control predicates, except the predicates dealing with exceptions, which are in Exception and signal handling.
Conjunction (P and Q).
Usage:ISO
Disjunction (P or Q). Note that in Ciao |/2 is not equivalent to ;/2.
Usage:ISO
If P then Q else fail, using first solution of P only. Also, (P -> Q ; R), if P then Q else R, using first solution of P only. No cuts are allowed in P.
Usage:ISO
Usage:ISO
Commit to any choices taken in the current predicate.
Goal P is not provable (negation by failure). Fails if P has a solution, and succeeds otherwise. No cuts are allowed in P.
Usage:ISO
If P then Q else R, exploring all solutions of P. No cuts are allowed in P.
Usage:if(A,B,C)
Usage:ISO
Succeed (noop).
Usage:ISO
Fail, backtrack immediately.
Usage:ISO
Generates an infinite sequence of backtracking choices.