executes one of two goals.
';'/2 succeeds if Goal1 or Goal2 succeeds. If
Goal1 succeeds Goal2 will not be executed. Goal2 will
be executed only if Goal1 fails.
By backtracing Goal1 as well as Goal2 can have more than
one solution. First Goal1 is backtraced. After finding all solutions
of Goal1 Goal2 will be backtraced.
';'/2 is a predefined infix-operator with priority 1100 which
is right-associative (see also current_op/3).
Goal1 goal Goal2 goal
| ;(integer(2.2), integer(3)). | Succeeds. |
| write(goal1),write(' and goal2'). | Succeeds and writes 'goal1'. |
This predicate is part of the ISO-Prolog Standard.