Pull to refresh

Comments 8

Нууу, я уж думал пришло время тряхнуть легаси и помянуть чертей обратной совместимости, а тут инфраструктура. Она, конечно, тоже важна, но я думаю, что раздражающие аспекты языка поприоритетнее будут когда дело касается таких опросов

В любом долгоживущем языке проблем с/, вызванных обратной совместимостью пруд-пруди. Но беда в том, что без оной, головняка в порядки больше. И если для библиотек, зачастую можно пережить (хотя на моей практике были и те случаи, когда ноша уже неподъёмна), то вот в конструкции языка - это ад.

Ну, скажем отсутвие модулей во много было связано именно с обратной совместимостью с Си. И это одна из наиболее мажорных проблем, ведущая к проблемам как со временем компиляции и таки и той самой дистрибуцией библиотек. Остаётся надеяться, что компиляторы таки запилят полноценную поддержку этой фичи.

Мне всегда казалось, что модули изобрели уже после того, как C++ ушел в массы. А ввести модули пытались еще в С++11, но поняли что для этого надо некисло перелопачивать компиляторы. Дошли только сейчас.

некисло перелопачивать компиляторы

Собственно это как раз второй уровень легаси. В 10-х годах другие языки стали набирать обороты и составлять конкуренцию в нишах плюсов и стали подгонять скорость появления новых фич как в компиляторах, так и в самом языке.

У Гугла тоже проблема с систематизацией подхода добавления зависимостей. У них часть проектов с бейзелем собирается , часть с симейком. Сравните репу filament и medipipe. Но в обоих случаях: большинство зависимостей - либо физически скопированные морсы (как у случае с филаментом ), либо ссылка на внешнмй опенсорс гит репо (как в случае с бейзел сборкой мелиапайпа). Всякие либджепеги и тензорфлоу. Хотя я думаю, что здесь дело в том, что Гугл покупает эти проекты вместе с командой разработки , а не разрабатывает с нуля.

Rust прямо очень долго компилируется? Там тоже многопроходный компилятор? Или что?

Sign up to leave a comment.