HeadlinesBriefing HeadlinesBriefing.com

tsrs: вышел порт TypeScript на Rust

Hacker News •
×

Cloudflare и Void Zero совместно с Max Schwenk из Owner.com работают над tsrs, портом компилятора TypeScript на Rust. Проект создаётся в тесной коллаборации с командой TypeScript и развивается в рамках инструментария компилятора JavaScript Oxc. Заявленная цель — помочь разработчикам меньше времени ждать проверки кода и больше времени тратить на создание продуктов, а также принести более быстрый и экономный по памяти TypeScript в больше сред, включая браузер.

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

Первые тесты производительности показывают, что tsrs работает до в 8 раз быстрее и использует примерно на 70% меньше памяти, чем TypeScript 7.0, при одинаковом количестве воркеров проверки типов. Следующий выпуск TypeScript, бета-версия 7.1, до в 2,5 раза быстрее версии 7.0, а часть оптимизаций перенесена в основной проект из tsrs. По умолчанию tsrs использует адаптивную конфигурацию, которая потребляет больше памяти ради ещё большей скорости. Экспериментальную версию можно установить через npm.

Порт TypeScript на Go уже дал существенный прирост, однако команда считает, что Rust даёт дополнительные преимущества. Модель памяти Rust позволяет проще организовать взаимодействие между гостем WebAssembly и хостом, тогда как компиляция Go в Wasm требует включения его сборщика мусора. Поскольку Cloudflare Workers запускают системы сборки и развёртывания в плотных циклах, небольшой расход памяти имеет большое значение.

Источник: Hacker News · Сводку подготовил HeadlinesBriefing