Comments 13
Еще появилась поддержка arrow functions без скобок, если тело функции содержит только одно выражение.
То, что раньше нужно было писать так:
теперь можно так:
То, что раньше нужно было писать так:
(singleParam) => { return expression; }
теперь можно так:
singleParam => expression
Спасибо, дописал.
Мне кажется, это не стоит упоминания. Они стремятся быть суперсетом ES6, а это часть стандарта. Кстати, подробнее список изменений 1.5 можно посмотреть в roadmap, а все, что уже поддерживается в Kangax ES6.
Еще, если аргумент один, но у него указан тип, то таки, к сожалению, надо брать его в скобки.
Это было с самого начала.
Хм, возможно это у меня IntellijIDEA раньше не понимала такой синтаксис. Если да, прошу прощения, за то, что ввел в заблуждение.
ReSharper тоже, к сожалению, много чего не понимает. Но разработчикам тулзов проще/дешевле/интереснее писать свои велосипеды, чем использовать стандартные сервисы компилятора. :(
В ReSharper мы поддерживали синтаксис `() => e` (и конечно `() => { }`) с самого начала поддержки TypeScript, потому что он был в 1.0. Даже недокументированный синтаксис `function() => e` хотели уже поддержать, но его дропнули до релиза.
Разработчиком тулзов сложнее/дороже писать половину компилятора и справляться с расхождениями, но ни у кого не возникает почему-то мыслей, что компиляторы:
1)… не всегда обладают необходимым для IDE функционалом (зачем компилятору хранить в AST вайтспейс и комментарии? зачем компилятору уметь API для модификаций AST и их трансляции обратно в текст? Зачем компилятору уметь быстро искать использования членов типов в других файлах? Зачем компилятору уметь переименовывать эти использования?).
2)… написаны на каком-нибудь языке, на котором _НЕ НАПИСАН_ UI и ядро IDE. Это вообще никого не парит, я смотрю, будто от компилятора так мало информации надо и такой тривиальный протокол общения, что ничего не стоит сделать интероп. Ага ага
3)… во время своего развития просто удаляют какие-то ставшими obsolete ошибками или предупредлениями, а вот от IDE хотят работу с разными версиями языка и нам приходится мейнтейнить все предыдущие версии языка
4)… не всегда существует! Как писать поддержку JavaScript тогда, о какие «стандартные сервисы»?
Никто почему-то не видит плюсов того, что все поддержки языков в IDE написаны на одном языке с использованием очень похожих концепций, что IDE не зависят от breaking changes в API и релизных циклов компиляторов, что некоторые вещи можно сделать лучше чем они сделаны в компиляторах и так далее.
Я могу дальше продолжать, но пользователям все равно виднее, эх :)
Разработчиком тулзов сложнее/дороже писать половину компилятора и справляться с расхождениями, но ни у кого не возникает почему-то мыслей, что компиляторы:
1)… не всегда обладают необходимым для IDE функционалом (зачем компилятору хранить в AST вайтспейс и комментарии? зачем компилятору уметь API для модификаций AST и их трансляции обратно в текст? Зачем компилятору уметь быстро искать использования членов типов в других файлах? Зачем компилятору уметь переименовывать эти использования?).
2)… написаны на каком-нибудь языке, на котором _НЕ НАПИСАН_ UI и ядро IDE. Это вообще никого не парит, я смотрю, будто от компилятора так мало информации надо и такой тривиальный протокол общения, что ничего не стоит сделать интероп. Ага ага
3)… во время своего развития просто удаляют какие-то ставшими obsolete ошибками или предупредлениями, а вот от IDE хотят работу с разными версиями языка и нам приходится мейнтейнить все предыдущие версии языка
4)… не всегда существует! Как писать поддержку JavaScript тогда, о какие «стандартные сервисы»?
Никто почему-то не видит плюсов того, что все поддержки языков в IDE написаны на одном языке с использованием очень похожих концепций, что IDE не зависят от breaking changes в API и релизных циклов компиляторов, что некоторые вещи можно сделать лучше чем они сделаны в компиляторах и так далее.
Я могу дальше продолжать, но пользователям все равно виднее, эх :)
Можете не повторяться, ваши доводы я уже читал, их понял, но конечный продукт из-за этого лучше не стал.
1. Roslyn это не спасло от вашего игнорирования.
2. Сервисы компилятора написаны на TS и как-то интегрируются со студией. А помните SCSS дополнение, подсвечивающее код с помощью Ruby компилятора?
3. Снепшоты — не самый плохой вариант.
А пользователям действительно виднее. Потому что сейчас поддержка TS (да даже JS) очень посредственная. Я уж не говорю про производительность, редактировать JS/CSS/XML/HTML/AS*X/TS на ноутбуке с включенным решарпером просто невозможно. На режим no implicit any, я так понял, вы окончательно забили и реализовывать не собираетесь. Вайтспейсы в AST вам не помогают не сжирать строки при любом рефакторинге типа introduce variable, extract method и др.
Вчера я переключил проект в TS 1.5 и посмотрел что получилось. Решарпер поставил новый рекорд плотности ложных ошибок! Ранее было примерно 1 ошибка на 500 строк (это если не использовать protected, который решарпер тоже не понимает — но спасибо за обещанный фикс в 9.2). Теперь у меня 17 ошибок на 212 строк! Потратил час времени, сделал вам 445645.
1. Roslyn это не спасло от вашего игнорирования.
2. Сервисы компилятора написаны на TS и как-то интегрируются со студией. А помните SCSS дополнение, подсвечивающее код с помощью Ruby компилятора?
3. Снепшоты — не самый плохой вариант.
А пользователям действительно виднее. Потому что сейчас поддержка TS (да даже JS) очень посредственная. Я уж не говорю про производительность, редактировать JS/CSS/XML/HTML/AS*X/TS на ноутбуке с включенным решарпером просто невозможно. На режим no implicit any, я так понял, вы окончательно забили и реализовывать не собираетесь. Вайтспейсы в AST вам не помогают не сжирать строки при любом рефакторинге типа introduce variable, extract method и др.
Вчера я переключил проект в TS 1.5 и посмотрел что получилось. Решарпер поставил новый рекорд плотности ложных ошибок! Ранее было примерно 1 ошибка на 500 строк (это если не использовать protected, который решарпер тоже не понимает — но спасибо за обещанный фикс в 9.2). Теперь у меня 17 ошибок на 212 строк! Потратил час времени, сделал вам 445645.
Как вы знаете, вчера вечером состоялся релиз Visual Studio 2015
А я даже и не знал:) На хабре еще вроде нет обзора фич новой Студии?
Descruction сделали, ждем pattern matching.
Sign up to leave a comment.
Вместе с Visual Studio 2015 состоялся релиз TypeScript 1.5