Pull to refresh

Comments 13

С генераторами есть некоторая засада: они поддерживаются только если компиляция идет в ES6. То есть для старых версий nodejs и для старых браузеров придется (пока) без них. Babel умеет транспилить генераторы в ES5, а TS — нет.
Если прям нужны генераторы, то да, засада. Либо ставим флаги на ноде/iojs. Либо генераторы отдельно транспилим еще и бабелем.
Мне лично нет, да и вообще жили же мы без генераторов. Я просто предупреждаю, потому что засада неочевидная.
Можно компилировать в ES6 и дополнительно babel-ем транспайлить в ES5. Я пока так и делаю, хотя попахивает извращением — но куда деваться :-)
Да почему, typescript это расширение стандарта и главная задача компилятора typescript сделать из нестандартного кода стандартный (хотя компилятор имеет небольшое количество фич es6 -> es5, их добавляют аккуратно).

Babel же это инструмент задача которого из кода написанного по стандарту es2015 сделать код совместимый с предыдущем стандартом, так что выглядит всё корректно.
К слову, не только es2015, тем ещё есть поддержка драфтов es7, jsx и flow. Последние два прямо из-коробки, без каких-либо доп.опций.
Babel тоже сам генераторы не компилирует, а использует regenerator. Никто не мешает использовать regenerator и с TypeScript.
Никто не знает, когда они планирует декораторы сделать стандартной фичей, а не экспериментальной?
Сам жду. Хотя даже сейчас уже работают в целом ок. Сам код декораторов на выходе не такой сложный получается. Так что используя в экспериментальном режиме можно контролировать результат. Разве что именно результирующий код будет меняться.
Компания Microsoft активно выпускает новые версии своего диалекта JavaScript

Ну тут наверное компания Microsoft активно с вами не согласиться, TS не диалект а полноценный язык да еще и надмножество над самим JS.
Ок, дабы исправить холивар, сделаю UPD
Я вовсе не думал о холиваре, честно. Просто изначально MS подошла к TS очень серьезно, вы посмотрите кто спроектировал язык. Вообще радует такой букет фич в новых релизах, да и дорожная карта просто пестрит. Очень продуманно создатели подходят к реализации языка, для меня это один из лучших проектов MS за последние лет пять.
Я никак не оспариваю крутость и великолепие языка TS. Но вспомните как они сами его называют: TS — это JS. Иногда говорят: это язык расширяющий возможности JavaScript. Любые расширения и отхождения от оригинального языка — это диалект.

Что есть диалект:
Диале́кт (греч. διάλεκτος — «наречие») — разновидность языка, связанная с оригиналом одной территорией.


MS выпустил диалект языка JavaScript. Так что говоря слово диалект я строю конгруэнтное предложение и не вижу в этом противоречий.

Резюмируя: TS — это полноценный язык, все верно, так как не может быть другого определения иначе оно будет противорчить. А полноценный язык потому, что TS — это JS с расширением.

И в заключении своей тирады: мне очень нравится TS и за него респект и уважение компании MS.
Sign up to leave a comment.

Articles