stops evaluation and returns value as the value of the nearest enclosing Catch.

is caught only by Catch[expr,form] where tag matches form.


  • You can use Throw and Catch to exit functions such as Nest, Fold, FixedPoint, and Scan.
  • tag can be any expression.
  • tag in Throw[value,tag] is reevaluated every time it is compared to form in Catch[expr,form].
  • An error is generated and an unevaluated Throw is returned if there is no appropriate enclosing Catch to catch the Throw.
Introduced in 1988
| Updated in 1996