Команда TypeScript переработала ядро компилятора TypeScript, чтобы оно было легче и быстрее, и перенесла проект на GitHub.
После экспериментов с новым, более легким ядром компилятора и получения очень положительных ранних результатов команда TypeScript планирует использовать ядро в новом компиляторе и языковой службе TypeScript.
Это будет происходить поэтапно, начиная с создания полного автономного компилятора на основе этой новой архитектуры ядра. Новый компилятор следует той же спецификации языка TypeScript 1.0, имеет те же флаги компилятора и функциональные возможности компилятора и выводит почти идентичный код с текущим компилятором TypeScript. Когда команда будет довольна, что компилятор завершен, он должен быть совместим с существующим.
Джонатан Тернер, пишущий о новом компиляторе в блоге TypeScript, говорит::
“цель здесь не в новых функциях компилятора, а в более чистой архитектуре компилятора, которая имеет лучшую производительность и позволяет нам добавлять новые функции с большей легкостью в будущих выпусках.”
Улучшения производительности в новом компиляторе впечатляют; при его нынешнем уровне полноты новый компилятор способен компилировать существующий реальный код машинописи в пять раз быстрее, чем текущий компилятор.
Пока компилятор не завершен с точки зрения функций; парсер должен иметь строгий режим, а также инкрементный анализ для языковой службы. Проверка типов близится к завершению, но все еще нуждается в работе над охватом ошибок, в то время как параметры компилятора не поддерживают —propagateEnumConstants, —watch, —locale, —logFile и —version.
Разработчикам также необходимо адаптировать языковую службу для работы с новым компилятором и добавить сохранение комментариев к эмиттеру.
Тернер говорит: “Когда мы достигнем паритета с нашим существующим компилятором, мы с нетерпением ожидаем перехода к функциям ECMAScript 6 и изучения основных запросов пользователей.”
Вместе с новым компилятором и в ответ на отзывы сообщества команда переходит на весь проект TypeScript на Github.