Эксперимент с ИИ за $24 000: компилятор TypeScript портировали на Rust

Typescript Rust ии разработка компилятор V8 theregister.com

Разработчик Тео Браун портировал компилятор TypeScript на Rust с помощью ИИ. Новая версия работает вдвое быстрее оригинала и открывает путь к более эффективным ИИ-средам.

Имея в запасе несколько лишних токенов, разработчик и популярный YouTube-блогер Тео Браун использовал ИИ-агентов для портирования компилятора TypeScript от Microsoft на язык Rust, просто чтобы проверить, возможно ли это. Ему удалось не только создать рабочую реализацию, но и получить код, который может проложить путь к более эффективным с точки зрения использования памяти средам для ИИ-агентов.

Браун утверждает, что его реализация на Rust работает вдвое быстрее официального переписывания TypeScript от Microsoft на Go (v7), выпущенного ранее в этом году, и в 12,5 раз быстрее предыдущей версии TypeScript (v6) — неплохой результат, учитывая, что он говорит, что даже не изучал код.

TS_Rust — это проект, который еще в начале года был бы непрактичным, отметил Браун в видеопрезентации. Но модели развиваются так быстро, что ранее немыслимые задачи теперь стали возможны.

Полученный TypeScript на основе Rust также открывает возможность использования движка V8 от Google в качестве менее требовательной к памяти альтернативы для выполнения агентных рабочих нагрузок, написанных на TypeScript. Браун утверждает, что такой подход был бы невозможен при использовании реализации TypeScript от Microsoft на Go.

Работа, которая не должна была быть возможной

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

Он потратил более 400 000 долларов США в эквиваленте API-токенов, используя GPT-5.6 Sol и GPT-6 Astra от OpenAI, которые достигли примерно 84% совместимости, прежде чем модели столкнулись с трудностями при завершении оставшейся работы.

Когда в прошлом месяце Anthropic выпустила Claude Opus 5.5, он вернулся к этой идее. К его удивлению, новая модель создала рабочую реализацию, потратив около 24 000 долларов США в эквиваленте API-токенов через подписки Брауна на Claude. Полученная реализация прошла тесты соответствия TypeScript с точностью почти 100%.

Возможно, этот неожиданный успех был обусловлен тем, что Claude 5.5 — более мощная модель, предположил Браун. Но Claude также оказалась достаточно умной, чтобы изменить свою стратегию и получить преимущество. Вместо того чтобы пытаться напрямую перевести код с JavaScript на Rust, модель портировала реализацию TypeScript от Microsoft на Go на Rust, скопировав при этом несколько ошибок из оригинала.

Браун узнал об этом только после того, как ему указал кто-то другой.

«Переписывание всего TypeScript с JS на Rust не было бы жизнеспособным», — сказал он в видео. «Команда Microsoft прошла по каждой строке кода TypeScript, портировала ее на Go, а затем начала дорабатывать, чтобы сделать ее лучше и быстрее на Go. Мои агенты сделали то же самое с версии Go на Rust».

TS_Rust — один из нескольких недавних проектов, в которых использовались LLM для переписывания части программного обеспечения на Rust. Сама Microsoft недавно переписала среду выполнения Copilot на Rust. Этот проект обошелся «софтверщикам» примерно в 120 000 долларов США в виде ИИ-монет. Google, выпустив свою модель Gemini 4 Argon, также использует ИИ-агентов для портирования нескольких крупных кодовых баз на C/C++ (RE2, libgav1 и части ядра Zircon из Fuchsia) на Rust.

Агенты на базе V8

Помимо новизны, собственная версия TypeScript от Брауна может в конечном итоге принести практическую пользу, устранив необходимость для агентов развертывать относительно тяжелые агентные рабочие пространства, такие как виртуальные машины и контейнеры Docker. Это задача, с которой даже официальная реализация Microsoft на Go не могла справиться так эффективно, утверждал он.

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

С компилятором TypeScript на основе Rust некоторые агентные рабочие нагрузки потенциально могут выполняться в движке V8 от Google вместо использования полного контейнера или виртуальной машины. Например, Cloudflare изолирует множество пользовательских сред, используя среду выполнения JavaScript Google V8, тем самым экономя сотни мегабайт на каждой клиентской среде.

Сам TypeScript, лишенный аннотаций типов, чисто работает в V8, но компилятор TypeScript от Microsoft на Go плохо подходит, поскольку сборщик мусора Go должен быть включен в среду выполнения с использованием WebAssembly — непростая задача.

Но Rust не нуждается в сборщике мусора, поэтому он более эффективно компилируется с WebAssembly. Легковесная агентная среда теоретически может работать в V8 с использованием TS_Rust и встроенной в память оболочки, такой как Just Bash от Vercel, что потенциально снижает затраты по сравнению с выполнением тех же рабочих нагрузок в виртуальной машине.

Что касается Брауна, он остается оптимистом в отношении ИИ и разработки программного обеспечения.

«Подобные проекты YOLO не должны быть жизнеспособными вообще. Например, они даже не должны проходить тесты, не говоря уже о том, чтобы фактически работать как прямая замена TypeScript», — сказал он. ®

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

В тренде:


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