Здравствуйте, hi_octane, Вы писали:
_>Как выше написал hardcase — вначале все обещают GC, обламываются в реализации и делают подсчёт ссылок (который в общем-то убогий GC, и в котором тоже можно словить вполне заметные проблемы там где не ждёшь).
Не обязательно городить подсчет ссылок, можно как в Rust — уникальные указатели и контроль за ними. С точки зрения надежности и скорости — самый лучший вариант.
_>С исключениями та же фигня — сейчас все компиляторы хотят уметь хотя-бы x86, x64, Arm. Нормальная реализация исключений — это трудно, вот и лепят коды ошибок. Дурят голову программистам которые уже освоили C++, и позволяют им повторить путь индустрии 70-х прошлого века (вроде тогда первые статьи пошли о пользе исключений) чем поворачивают их назад в C++.
Исключения — очень спорная вещь. Разговоры о "пользе" исключений — однобокий взгляд. Минусов у исключений не меньше, чем плюсов.
К счастью, есть люди, которые это понимают, поэтому Rust и Swift именно такие, какие есть.