Pull to refresh

Comments 36

Вот если бы как-ниубдь скрестить typescript с coffeescript — получился бы суперязык!
Я после года разработки на кофе уже не смогу наверное привыкнуть назад ко всем этим фигурным скобочкам…
Нет, пожалуйста, не надо :)
Я наоборот, плохо воспринимаю языки, которые не используют скобки для разделения блоков.

Да и сам CoffeeScript неплох.
Особенно, если к нему прибавить еще и IcedCoffeeScript
Думаю, имея такого «конкурента», CoffeeScript тоже начнет динамичнее развиваться.
Я наоборот, плохо воспринимаю языки, которые не используют скобки для разделения блоков.

К отсутствию скобок так быстро привыкаешь, что потом «за уши не оттянешь»
Возможно. Но теперь и перепривыкать не надо. TypeScript явно дает больше.
Самое главное — это те кто стоят за TypeScript.
Не удивлюсь если нативная поддержка появится скоро в браузерах.
Ну Вы же сами по-моему говорили, что TypeScript это не совсем ECMA6, хотя и близок.
Ну LiveScript все же больше функциональщина и для решения повседневных задач мало подходит.
Да и не решает большинства проблем.

Кстати еще одной уникальной особенностью TypeScript является, что они не только написали компилятор, но и language tools, которые позволяют добавить настоящий auto-complete в любой редактор малой кровью.
Я понял о чем вы.
Однако добавить полноценный автокомплит в сторонний редактор, который бы работал с проектом и скопом не так просто.
Да я обращал на него внимание, но особенного смысла переходить на него не вижу, так как по сравнению с CoffeeScript это просто еще более сладкий синтаксический сахар)
В TypeScript же привлекают модули и типизация.
То есть, когда я говорию о том, что неплохо бы было скрестить CoffeeScript и TypeScript, то подразумеваю кофе с типами :-)
TypeScript в целом и есть реализация ES6. По крайней мере они очень тесно общаются с комитетом.
Есть сходсто некоторое синтаксических конструкций (классы, лямбда-выражения, деструктуризация, сплаты и пр.), но к сожалению многих вещей нет и не планируется в ближайшее время. К примеру set/get, которые уже имплементированы в некоторых форках.
Get/Set есть.
Он считается уже частью языка JavaScript, а как известно, любой JavaScript — это уже TypeScript.

В общем, вот.
Честно говоря, лучше бы они просто сделали нормальный билдер ES6=>ES5|ES3 вместо полукостыльного полунового языка.
Anders Hejlsberg достаточно опытный и уважаемый человек и не первый раз занимается инструментами для разработчиков. Думаю, пусть лучше он решает.

Но в свою очередь они стремятся к очень высокой совместимости с ES6

Другое интересно, никто не спросил про asm.js, а судя по обсуждениям, это тоже в планах.
Так что теперь из-за того что он уважаемый человек я не имею права иметь своё мнение?
Он и решил. И, имхо, он ошибся. Тот же Коффии сейчас куда популярнее. ТайпСкриптом пользуются только редкие маргиналы.
Вы торопите события. TypeScript до сих пор в preview и первый публичный релиз состоялся лишь в ноябре.

И да, вы имеете право иметь свое мнение. Но мнение Андерса авторитетней. Все же опыта у него побольше, согласитесь.
Такие решения должны приниматься в рамках комитетов по стандартизации, а не единолично, если что.
Судьба CoffeeScript или LiveScript разве решается в рамках комитетов по стандартизации?
Если вы обратили внимание, то CoffeeScript очень медленно развивается в плане имплементации новых возможностей (к примеру set/get, опциональный return, перечисления через ,).
Сообщество устало стучать в глухую дверь и многие перешли на LiveScript.

Что же касается TypeScript, то тут все серьезней, им занимаются на более высоком уровне с привлечением высококлассных специалистов.
И если TypeScript выстрелит, то избежать создания комитета по стандартизации им не удастся.
На самом деле над TypeScript работает достаточно немного людей. И Андерс в том числе совмещает сейчас архитектора C# и занимается TypeScript.

Мне видится вся ситуация вот как:
В начале 2000-ых Микрософт сделали ставку на C# и .Net, для этого сманили видного архитектора из Borland и отца Delphi. Платформа получилась замечательная (особенно для enterprise рынка), была проделанна огромнейшая работа над ошибками Java. Язык вышел современный, хорошо припудренный сахаром.
Но в целом платформа не стала мега-популярной (уровня php, ruby).
Возможно, отчасти в этом причина в закрытости системы — закрытые исходники и лок на Windows.

Сейчас же геополитика сильно меняется — платформ становится больше, Windows больше не монополия и у бизнеса есть серьезный запрос на крос-платформенные инструменты. Таковыми могут стать html5+JavaScript — пожалуй, единственная технология, которая может стать компромиссом. Но JavaScript лишен многих прелестей «серьезных» языков, особенно это сказывалось в отсутствии хороших инструментов (я лет 5 наблюдал, и даже слал баг-репорты в команду разработки Visual Studio по поводу JavaScript) и им с огромным трудом давалось написать нормальный intellisense (честное автодополнение) из-за динамичности языка.
И посмотрев на все эти вызовы, возможно микрософт решил попробовать сыграть по новому и «модному» — открытые исходные коды, полная прозрачность, работа с сообществом, изначальная кросс-платформенность. Если ближайшее время это выстрелит, то нас ждет еще более бурный рост JavaScript (потому что по сути они не пытаются заменить JavaScript) и на это действительно будет кинуто гораздо больше сил.

В свою очередь, еще одной положительной тенденцией видятся последние изменения в iOS SDK в JavaScriptCore — теперь можно из JavaScript вызывать нативные функции достаточно прозрачно (и вроде как наоборот).

Не говоря о том, что под Windows 8 можно вообще приложения писать на html5+JS.

Из всего этого выйграют все, в том числе и CoffeeScript, и LiveScript, и стандарты и даже ES6 (все же мы живем в web и знаем, что стандарты не могут идти впереди прогресса).

Все же JavaScript is Assembly Language for the Web
Как вы видите себе реализацию опционального return?
Я вкурсе что get/set есть в ES 5.1, которые большинство современных движков поддерживает, речь шла о CoffeeScript, в котором такой поддержки пока нет
Если я что-то не так сказал, прошу дать мне об этом знать, возможно меня не так поняли
Мне почему-то показалось, что у вас изначально было написано CoffeeScript, если это не так, прошу прощения )
Очень надеюсь на то, что повышение производительности — правда. 0.8.3 в студии любил ужасно лагать даже на мелких проектах и работать с ним было невозможно.
Из замеченных сразу плюсов — теперь импорты работают адекватно с функциями, изменяющими прототип (sugarjs). Раньше автокомплит легко показывал несколько тысяч перегрузок в зависимости от количества включений файла, теперь всё, кажется, ок.
UFO landed and left these words here
Товарищи на видео (и конкретно Хейслберг) обсуждают эту область как вторую по популярности просьбу (первая — generics — выполнена). В версии 1 этой фичи точно не будет — причина в недостаточной определённости текущего драфта ECMAScript 6 в смежной области, насколько я понял: без продвижения этого драфта сгенерированный из конструкций async / await JS код будет сильно отличаться от оригинального TS, а это входит в противоречия с намереньями авторов TS.
В версии 0.9.0 файл typescript.js теперь весит 2,44 МБ, что существенно больше, чем в предыдущей версии (в версии 0.8.3 он весил 1,12 МБ). Нет ничего удивительного в том, что версия для Node.js стала работать медленнее, потому что 2,44 МБ – это очень большой объем кода (даже для движка V8).
Sign up to leave a comment.

Articles