Машинопись Становится Легкой, Перемещается На GitHub


Команда TypeScript переработала ядро компилятора TypeScript, чтобы оно было легче и быстрее, и перенесла проект на GitHub.

После экспериментов с новым, более легким ядром компилятора и получения очень положительных ранних результатов команда TypeScript планирует использовать ядро в новом компиляторе и языковой службе TypeScript.

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

Джонатан Тернер, пишущий о новом компиляторе в блоге TypeScript, говорит::

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

Улучшения производительности в новом компиляторе впечатляют; при его нынешнем уровне полноты новый компилятор способен компилировать существующий реальный код машинописи в пять раз быстрее, чем текущий компилятор.

Пока компилятор не завершен с точки зрения функций; парсер должен иметь строгий режим, а также инкрементный анализ для языковой службы. Проверка типов близится к завершению, но все еще нуждается в работе над охватом ошибок, в то время как параметры компилятора не поддерживают —propagateEnumConstants, —watch, —locale, —logFile и —version.

Разработчикам также необходимо адаптировать языковую службу для работы с новым компилятором и добавить сохранение комментариев к эмиттеру.

Тернер говорит: “Когда мы достигнем паритета с нашим существующим компилятором, мы с нетерпением ожидаем перехода к функциям ECMAScript 6 и изучения основных запросов пользователей.”

Вместе с новым компилятором и в ответ на отзывы сообщества команда переходит на весь проект TypeScript на Github.


Добавить комментарий