Технологии, наука и безопасность своими словами

Технологии

Claude за $24 тысячи переписал компилятор TypeScript на Rust и обогнал версию Microsoft по скорости

История началась с амбициозной и дорогой проверки пределов возможностей ИИ в программировании. Разработчик Тео Браун задался целью перенести компилятор TypeScript на язык Rust. Предыдущие попытки с использованием моделей OpenAI заняли несколько месяцев, потребовали генерации более 1,3 миллиона строк кода и обошлись в пересчете на API-токены более чем в 400 тысяч долларов, но так и не подняли совместимость выше 84%.

Перелом наступил после смены инструмента. Когда Браун переключился на Claude Opus 5.5, первая работоспособная версия компилятора появилась примерно за десять часов. Дальнейшая доводка проекта заняла у ИИ-агента около двух недель и потребовала еще 24 047 долларов в эквиваленте стоимости API-вызовов.

Искусственный интеллект подошел к задаче прагматично. Вместо того чтобы переносить старую кодовую базу TypeScript, написанную на JavaScript, он взял за основу свежий нативный компилятор Microsoft, созданный на Go. Это решение дало проекту не только современную архитектуру, но и унаследовало часть поведения исходного кода, обеспечив высокую совместимость с оригиналом.

Результат работы получил название tsc-rs. Он привязан к сборке TypeScript 7.1.0-dev от 8 октября и полностью проходит все 184 773 теста, унаследованных от Go-версии. Языковой сервер и API компилятора совпадают с эталонной реализацией Microsoft на контрольных наборах данных.

На практике это означает, что инструмент уже можно использовать. Тестирование на 120 открытых проектах показало, что различия в выводе сводятся к известным проблемам и ситуациям, где результат самого Go-компилятора зависит от порядка выполнения операций. Главный козырь Rust-версии — скорость.

По данным проекта, на наборе из 60 открытых репозиториев tsc-rs выполняет проверку типов примерно за половину времени, которое требуется официальному компилятору на Go. В синтетическом тесте T3 Code обычный режим оказался почти втрое быстрее, а ускоренный режим на 16-ядерной машине превысил показатели TypeScript 7 более чем в четыре раза. Для контекста: сама Microsoft выпустила TypeScript 7 в июле, переписав его с TypeScript/JavaScript на Go.

Компания заявляла о десятикратном ускорении по сравнению с предыдущей, шестой версией. Этот переход уже принес ощутимую пользу крупным проектам — например, Next.js 16.3 сократил время компиляции и потребление памяти в своих сценариях. Несмотря на впечатляющие результаты, tsc-rs пока остается экспериментом, а не заменой официального инструмента.

В репозитории проекта честно перечислены известные расхождения для отдельных монорепозиториев и режимов сборки. Сам Браун признает, что не изучал сгенерированный ИИ код построчно. Тем не менее, этот случай наглядно демонстрирует, что современные языковые модели уже способны в одиночку перенести крупный компилятор целиком.

Правда, реальная цена такого эксперимента, с учетом всех предшествующих неудач, оказалась значительно выше броских 24 тысяч долларов.

инновации программирование открытый код

Оригинал

Обсуждение

Комментариев пока нет.

Похожие новости