На прошлой неделе Anthropic представила CCC (Claude's C Compiler) — полноценный C-компилятор, написанный Claude Opus 4.6 на Rust. Компания заявила, что он способен собрать ядро Linux. Автор техблога Harshanu проверил это на практике — и результаты оказались далеки от рекламных. На бенчмарке SQLite 3.46 код, скомпилированный CCC, отработал за 2 часа 6 минут — тот же тест с GCC без оптимизаций занял 10,3 секунды. Разница — 737 раз. На сложных запросах с вложенными подзапросами отставание достигало 158 000 раз. Причина — в примитивном распределении регистров: CCC использует один регистр как "челнок" между ячейками стека, превращая каждую операцию в цепочку обращений к памяти. Бинарники при этом получаются в 2,7–3 раза больше, а компилятор потребляет в 5,9 раза больше оперативной памяти. С ядром Linux 6.9 ситуация еще интереснее. CCC действительно скомпилировал все 2 844 исходных файла на C без единой ошибки — но на этапе линковки получил 40 784 ошибки undefined reference. Компилятор генер
CCC: C-компилятор от Anthropic оказался не таким уж и гениальным
9 февраля9 фев
1 мин