Так а что делать, если хочется хоть какой-то определённости и уверенности в вызываемом коде? А если я не хочу при первом же исключении прерывать ход вычислений, я хочу как можно дольше продолжать обработку, пока это вообще возможно, чтобы показать, например, наиболее подробный лог.
Вообще, я видел TRY(error), сделанный на корутинах, кажется, что с выходом 20 стандарта, это будет первое, что я попробую)
Как раз с исключениями у тебя появляется гарантия инвариантов, если что то выполнилось, то оно выполнилось успешно. Прерывание выполнения это БЛАГО