Looks like we may get the best of both worlds now, with multiple returns! The TRAP and CATCH could offer a second output which is the value that "falls out" of the evaluation.
>> [error value]: trap [1 + 1]
== ~null~ ; anti
>> error
== ~null~ ; anti
>> value
== 2
>> [~ value]: trap [1 + 1] then [print "error!"]
>> value
== 2
>> [~ value]: trap [1 / 0] then [print "error!"]
error!
How slick is that?? Very...