_>В Rust'е в принципе всё тоже самое, но есть пара нюансов. Во-первых в нём невозможно пропустить эту самую обработку (если достаточно перенаправить ошибку выше без всяких контекстов, то просто ставишь оператор "знак вопроса" в этой точке, но при этом ты явно видишь что здесь возможно возникновение ошибки и все возможные её типы)
В большинстве случаев нужен как раз тот самый "знак вопроса". Поэтому многие языки именно его и имеют по умолчанию. Дабы снизить количество boilerplate. И выражать только конкретное намерение (intent) добавить некий контекст к пролетающему исключению. Там где нечего добавить — ничего и писать не надо. Потому этот знак вопроса лишний.