Standard library referenceModules
i/failure
Errors as a service (§9.3): Fail(E), raise and catch are
ordinary library code over control.boundary and control.escape.
raise
Ends the computation with error, through the current Fail.
raise = <E>(error : E) <- (fail : Syn3ServiceFail(E)) -> Never { catch
Gives Ok(value) when body ends with value, or Error(error) for the
first error it raises through Fail(E).
catch = <A, E, N>(