Здравствуйте, AlexRK, Вы писали:
ARK>Не обязательно городить подсчет ссылок, можно как в Rust — уникальные указатели и контроль за ними. С точки зрения надежности и скорости — самый лучший вариант.
В Расте, как раз, подсчет ссылок. Уникальные указатели можно в любой язык/рантайм встроить. Но это не общий механизм. Все равно нужно иметь возможность раделяемого владения ссылками. И тут есть только три варианта:
1. GC.
2. Подсчет ссылок.
3. Ручное управление памятью.
Мне кажется GC + уникальные указатели лучше чем подсчет ссылок и уникальные указатели.
ARK>Исключения — очень спорная вещь. Разговоры о "пользе" исключений — однобокий взгляд. Минусов у исключений не меньше, чем плюсов.
Все минусы упираются в ручное управление памятью. В управляемых средах с исключениями проблем нет. Не надо выдумывать.
ARK>К счастью, есть люди, которые это понимают, поэтому Rust и Swift именно такие, какие есть.
Осталось только понять не заблуждаются ли эти люди. Вот Гугль в Хроме выбрал GC. И Хром выглядит вполне себе конкурентноспособно. А вот Раст выглядит довольно странно (мягко говоря).
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.