🦀 Angular — новый компилятор на TypeScript 7 (ngp)
Angular объявил о работе над новым препроцессором ngp: часть компиляции перенесли в нативный Rust (на oxc), а остальное оставили в TypeScript. Идея — отделить генерацию кода от проверки типов: ngp будет выдавать два файла на исходник — один для рантайма, другой для type‑check, с sourcemap’ами и большинством артефактов обычно держатся в памяти, а не на диске.
Архитектура гибридная: фронтенд (analyzer) на Rust+oxc парсит и распараллеливает работу, бэкенд на TypeScript вызывает существующий шаблонный компайлер и генерирует output. Через napi-rs можно загрузить Rust‑библиотеку нативно или через WASM — полезно для браузерных редакторов. Результат пока в MVP: тесты на большой базе Google, прототип интеграции в CLI и language service, экспериментальная версия для тестирования обещана в этом году.
Производительность выглядит многообещающе, но окончательные выводы будут после честного сравнения полного пайплайна. Команда тесно работает с Microsoft по TS 7.1 interop, ожидаются единичные несовпадения в type‑checking и возможные документированные breaking changes. Выбор Rust объясняют наличием зрелой экосистемы (oxc), тогда как Go‑порт TypeScript не давал нужной библиотеки парсинга/трансформации.
Статья
#Angular #TypeScript #Rust #oxc #ngp #Compiler #WebDev
Post #5382
29