Should RESCUE and CATCH return null if no fails/throws?

Looks like we may get the best of both worlds now, with multiple returns! The RESCUE and CATCH could offer a second output which is the value that "falls out" of the evaluation.

>> [error value]: rescue [1 + 1]
== ~null~  ; anti

>> error
== ~null~  ; anti

>> value
== 2

>> [_ value]: rescue [1 + 1] then [print "error!"]

>> value
== 2

>> [_ value]: rescue [1 / 0] then [print "error!"]
error!
1 Like