I think if we ever add a mechanism for intra-task catchable exceptions, it should be semantically and syntactically distinct from task failure / abort / whatever (even if under the hood, they are both implemented by unwinding).
Another potential name here might be error!, which is what Haskell uses for their equivalent. But this conflicts with the current error! for logging, and might also be confusable with the Err variant of Results.
(Gah, I deleted my previous top-level comment so I could make it a reply to the particular comment I’m responding to instead, and now it’s complaining that the body is too similar…)