Raise an exception (that might be intercepted by
A call to
never backtrack, fail or succeed. Rather,
searches for an ancestor of the current goal, ProtectedGoal,
which is of the form:
The first argument, E, unifies with Exception. It then executes the Handler instead of the ProtectedGoal. It will always find a handler at the top level, which prints out a message corresponding to the exception. See ref-msg-tbm for a discussion on how exceptions are printed.