Если ИИ не нужна читаемость кода, почему остановиться на C?
Если ИИ не нужна читаемость кода, почему остановиться на C? В посте на X отстаивается тезис: важнейшим языком будущего может оказаться C — не C++, не Python и не Rust. Логика такая: высокоуровневые абстракции существуют потому, что люди ошибаются с управлением памятью, указателями и конкурентностью. Если большую часть кода пишет ИИ, плата за читаемость становится лишней нагрузкой, и C снова выглядит эффективным, компактным и близким к железу. Автор считает, что у тезиса есть слабое место — то, что происходит после генерации кода. Исследования кода на C и C++, созданного языковыми моделями, показывают неудобный паттерн: код компилируется и часто проходит поверхностные тесты, но в работе чаще встречаются утечки памяти, зависания и нарушения доступа, чем в человеческом коде. В одном бенчмарке по C++ вероятность подтверждённого нарушения в рантайме у кода от ИИ была примерно вдвое выше — даже при контроле размера кода и доли тестов. В межъязыковых анализах C и C++ концентрировали больше проблем безопасности памяти, утечек секретов и плохого использования криптографии, чем Python и Java. ИИ ошибается не так, как человек, но ошибается — а в C такие ошибки дёшево внести и дорого найти. Автор доводит аргумент до абсурда: если посылка «проверка человека не нужна, ведь ИИ не забывает проверку границ» верна, то логичный вывод — не C, а сразу машинный код. Остановка на середине пути объясняется тем, что понимать сгенерированное всё ещё нужен человек: кто-то проверяет, исправляет и ставит следующую задачу. Читаемость — не роскошь, а условие контроля: чем непрозрачнее код, тем дороже ревью и хрупче точечные исправления. По мнению автора, C остаётся оправданным там, где его требует сама предметная область: ядра и операционные системы, встраиваемые системы, критичные по производительности участки кода и legacy, который нельзя переписать. Но в этих случаях делегирующий задачу сам должен знать C. Вне их перенос генерации в C «раз ИИ не нужны абстракции» меняет издержку рантайма на издержку сопровождения и доверия. Rust в этом споре — компромисс: производительность с компилятором как союзником безопасности. Работает отчасти, но суть не меняется: пока за то, что попадает в продакшн, отвечает человек, язык должен быть читаемым для этого человека. Вывод автора: C не умер, но и не стал языком будущего только потому, что ИИ пишет быстро — в тезисе не хватает звена финальной проверки: кто проверяет, кто исправляет, кто решает, что уходит в релиз. Автор ссылается на исследования 2026 года о надёжности и безопасности памяти в коде на C от языковых моделей, многоуровневую верификацию кода на C++ и межъязыковой анализ качества сгенерированного кода. Материал — авторский разбор дискуссии; в конце он предлагает более развёрнутую версию в своём блоге и продвигает серию собственных книг по ИИ-ассистированной разработке со скидочным купоном. Источник: https://dev.to/aspepper/se-a-ia-nao-precisa-de-legibilidade-por-que-parar-em-c-1d57