[ Obsolete | Reference Manual | Alphabetic Index ]

# block(?Goal, ?Catcher, ?Recovery)

Equivalent to call(Goal) if Goal succeeds or fails. If Goal throws an exception that unifies with Catcher, Recovery is executed

Goal
  A callable term.
Catcher
  Any term.
Recovery
  A callable term.

### This built-in predicate is obsolete!

## Description

This is a deprecated alias for catch/3 - see there.

### Modules

This predicate is sensitive to its module context (tool predicate, see @/2).

### Fail Conditions

Fail if Goal fails, or if Goal exits and Recovery fails

### Resatisfiable

Resatisfiable if Goal is resatisfiable, or Goal exits and Recovery is resatisfiable

## See Also

catch / 3, throw / 1, exit_block / 1