vaa>Почему в расте отсутствует выброс исключений? Это же удобный способ передачи управления.
Потому что язык молодой, зубы пока молочные. Коренные появятся позже.
Оно так было с большинством языков — исключения появились через N итераций. Исключения (хехе, каламбурчик) были (кажется, в Java с самого начала), но в большинстве случаев исключения появлялилсь много позже, при росте сложности проектов и все более частой необходимости non-local return с возможностью посмотреть исходный call stack. Это не более чем формализация практики, когда error return оборачивают в tuple типа {error, Reason, Location} на каждом уровне из цепочки вызовов (т.н. "bubble wrapping"), по сути создавая call stack врукопашную. Так что и в Rust оно появится. Просто позже.