The control construct block/3 runs Goal in a block labelled Tag.
If Goal calls exit_block/1 using a matching Tag, the execution
of Goal is abandoned using exception handling and execution
continues by running Recovery. Goal can call cut_block/1. If
there is a block with matching Tag, all choice points created
since the block was started are destroyed.
- The block control structure is implemented on top of
catch/3 and throw/1. If catch/3 is used inside Goal,
the user must ensure that either (1) the protected
goal does not call exit_block/1 or cut_block/1 or (2)
the Catcher of the catch/3 call does not unify with
a term block(_,_).
Tags are associated to your profile if you are logged in