в расте?
Спросите у создателя го
Вам сообщить, если ответит?
Потому что с языком с gc проще работать
Потому что "моментальное удаление" в расте сделано ценой очень сильного усложнения типовой системы языка и времени компиляции. Go решает другие задачи. Одним из изначальных требований к Go было высокая скорость компиляции
у го в отличие от раста гораздо более гибкая модель жизненного цикла переменной, поэтому его статический анализ практически не реалистичен
Но как удаление мусора влияет на скорость компиляции?
Никак, на скорость компиляции влияет вывод регионов
Где об этом поподробнее?
В общем случае никак. Но в расте мусор не руками удаляется. Поэтому там компиляция намного дольше
То есть мы заплатили нагрузками на gc каждые 30 минут за сокращение времени компиляции?
кажется неплохая статья по теме https://steveklabnik.com/writing/borrow-checking-escape-analysis-and-the-generational-hypothesis (не читал внимательно)
И уменьшением количества интеллектуальной работы, которую нужно ежедневно совершать разработчику
Gc не бесплатен, это правда. Но в большинстве случаев эта цена стоит того
Если бы gc всех не устраивал, то все писали бы на расте и си. Но внезапно в большинстве задач лучше отдать сборку мусора gc, пожертвовав производительностью и получив прирост к скорости разработки и удобству
Обсуждают сегодня