LINUX.ORG.RU

Вышел CoffeeScript 1.9.0

 , ,


2

3

Спустя полгода после последнего релиза, вышла мажорная версия CoffeeScript 1.9.0.

CoffeeScript — это язык программирования, транслируемый в JavaScript. CoffeeScript добавляет синтаксический сахар в стиле Ruby, Python, Haskell и Erlang для того, чтобы улучшить читаемость кода и уменьшить его размер. CoffeeScript позволяет писать более компактный код по сравнению с JavaScript.

Список изменений:

  • Поддержка ES6 генераторов
  • Более надежный и устойчивый к ошибкам парсинг
  • Улучшены сообщения об ошибках для строк и регулярных выражений, особенно, что касается интерполяции
  • Изменена стратегия генерации имен переменных во время компиляции
  • Исправлена совместимость REPL с последними версиями Node и io.js
  • Различные мелкие исправления

>>> Подробности



Проверено: Shaman007 ()

Следует отметить, что набирающий популярность, имеющий все шансы стать главным инструментом веб-разработчика, редактор кода Atom — так же, большей частью, написан на CoffeeScript.

redhat ()

Годная штука. Надеюсь, что скоро он будет поддерживаться в браузерах нативно, замещая богомерзский js.

Hertz ★★★★★ ()

говно этот кофескрипт. дефектив бай дизайн. С детскими болезнями. хотя сам яваскрипт тоже, а это ещё и дефективный сахар над дефективным яваскриптом — лож на лжи, фрактал плохого дизайна.

Bad_ptr ★★★ ()
Последнее исправление: Bad_ptr (всего исправлений: 1)

Пишешь на coffeescript функцию с циклом в конце

@

Забыл в конце функции добавить пустой return

@

Сгенерированный js пытается вернуть результат цикла, наворотив такой вырвиглазый ***ец, что навсегда зарекаешься использовать это школьное поделие

@

Автор языка говорит, что это норма и исправлять не собирается

makoven ★★★★ ()
Последнее исправление: makoven (всего исправлений: 1)

Пишешь публичный проект на CoffeeScript

@

Каждый, кто видит сгенерированный js в твоем репозитории, жалуется на его убогость и нечитаемость

@

Ощущаешь себя белой вороной, приобретаешь статус хипстера

makoven ★★★★ ()

Радуешься возможности писать без скобок и знаков препинания

@

Друзья видят в твоем коде строку print line for own line of lines и навсегда перестают с тобой общаться

makoven ★★★★ ()
Последнее исправление: makoven (всего исправлений: 1)

Хочешь попробовать новую функциональность из ES6 в typescript

@

Ждешь 4 года пока автор соизволит ее добавить

makoven ★★★★ ()
Ответ на: комментарий от rupert

Смеешься над джаваскриптерами с их убогим недо-ООП

@

Гордо пишешь все классами и методами в CoffeeScript

@

На собеседовании плаваешь в базовых понятиях «функция конструктор», «прототип», «замыкание»

makoven ★★★★ ()
Ответ на: комментарий от makoven

Забыл в конце функции добавить пустой return

Т.е. сам накосячил, а виновать Кривой ЯП?

RiseOfDeath ★★★ ()

вышла мажорная версия CoffeeScript 1.9.0.

Дай угадаю. Предыдущая была 0.9.0? А почему так сразу апнули?

anonymous ()

вышла мажорная версия CoffeeScript 1.9.0

поддержка, болле надёжный, улучшены, изменена стратегия генерации имён во время компиляции, исправлена, исправления

Ты не сказал главного: что сломали-то? Перечисли, пожалуйста.

anonymous ()
Ответ на: комментарий от redhat

У тебя «мажорная» в смысле «для мажоров», что ли? Я что-то не понял.

anonymous ()
Ответ на: комментарий от redhat
Given a version number MAJOR.MINOR.PATCH, increment the:

MAJOR version when you make incompatible API changes,
MINOR version when you add functionality in a backwards-compatible manner, and
PATCH version when you make backwards-compatible bug fixes.
Additional labels for pre-release and build metadata are available as extensions to the MAJOR.MINOR.PATCH format.

1.9.0
поддержка новых фич, исправления, улучшения, фиксы

Короче. Это — минорный релиз. Называй вещи своими именами. Мажорный был бы если бы поменялась первая цифра и/или сломалась совместимость назад.

anonymous ()
Ответ на: комментарий от anonymous

Shaman007, тебе тоже привет. Ты опять не прочитал, что подтверждаешь.

anonymous ()
Ответ на: комментарий от anonymous

Короче. Это — минорный релиз.

Да-да, я как-то позабыл об этом, my bad:

0.0.0-alpha+201412081823
^ ^ ^ ^     ^
| | | |      `build metadata
| | | `pre-release
| | `patch
| `minor
`major
править уже не могу.

redhat ()
Ответ на: комментарий от anonymous

но ты тоже хорош, уже 5 сообщений обмазал о том, что можно было уместить в одно, это характеризует тебя не с лучшей стороны и как бы намекает нам.

redhat ()
Ответ на: комментарий от RiseOfDeath

Это не косяк. Это заскок автора. Я не хочу ничего возвращать и не пишу return. А он мне зачем-то оборачивает цикл в функцию, собирает в массив все возвращаемые из цикла значения и возвращает этот массив. Хотя я его ни о чем таком не просил. Естественно, читать и отлаживать такой js невозможно

makoven ★★★★ ()
Ответ на: комментарий от RiseOfDeath

Если транслятор даже не выдал предупреждение о таком косяке, то в топку такой ЯП вместе с аффтором.

anonymous ()
Ответ на: комментарий от makoven

Сгенерированный кот не должен же лежать в VCS?

anonymous ()
Ответ на: комментарий от makoven

Послушай, мальчик, ты бы хоть постеснялся такое писать. А то как-то стыдно за уровень ресурса становится. Вроде и линуксоид — а осилить простой инструмент не смог.

anonymous ()
Ответ на: комментарий от anonymous

К сожалению, освоил CoffeeScript, TypeScript, LiveScript. Абсолютно бесполезный опыт.

makoven ★★★★ ()
Ответ на: комментарий от redhat

Ну, я весьма прозрачно намекнул первый раз. А ты не понял почему-то. =)

anonymous ()
Ответ на: комментарий от anonymous

Если пишешь для себя - то да, не должен. Если же для сообщества. Кофескриптом пользуются единицы. Никто не будет ставить компилер и собирать твою либу. Ее просто проигнорируют (за некоторыми исключениями, естественно). Никто не будет слать пулреквесты кроме нескольких оголтелых хипстеров )

makoven ★★★★ ()

На мой взгляд перспективней использовать EcmaScript 6. Есть генератор в EcmaScript 5, в светлом будущем генератор будет не нужен и всё заработает в браузере без переписывания исходников. CoffeeScript хороший проект, но перспективы у него туманные.

Legioner ★★★★★ ()
Ответ на: комментарий от makoven

Это не косяк. Это заскок автора.

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

mix_mix ★★★★★ ()
Ответ на: комментарий от mix_mix

В функциональных языках есть for? И если есть и он стоит в конце функции - какой у функции будет результат?

makoven ★★★★ ()
Ответ на: комментарий от anonymous

Это что-то типа map? Map есть и в ванильном js. А что касается for - никому не придет в голову писать что-то типа var a = for(i=0;i<10;i++) Ибо for это чисто императивная конструкция и не подразумевает возвращение значений

makoven ★★★★ ()
Последнее исправление: makoven (всего исправлений: 2)
Ответ на: комментарий от makoven

И это у вас называется опыт? Да большие проекты на чистом js писать вообще невыносимо. Поэтому люди и придумывают CoffeeScript, LiveScript, 6to5, Dart и прочее. Проблема не CS, а в безобразности JavaScript и в людях, которые перед тем как его (CS) использовать даже не удосужились прочитать документацию.

m16a1 ()
Ответ на: комментарий от m16a1

Да большие проекты на чистом js писать вообще невыносимо

С чем, по вашему это связано. И как, по вашему, coffeeScript и Livescript решают эти проблемы? Про дарт и typescript - согласен, решают.

makoven ★★★★ ()
Ответ на: комментарий от m16a1

и в людях, которые перед тем как его (CS) использовать даже не удосужились прочитать документацию.

Ни один из моих коментариев никоим образом не затрагивает вопросы понимания синтаксиса или семантики cs, а затрагивает исключительно вопрос пригодности использования языка в реальной жизни. Непонятно почему вы сделали вывод, что я не разобрался в документации.

makoven ★★★★ ()
Ответ на: комментарий от redhat

А ты все пиаришь эту убогую недоделку?!?

anonymous ()
Ответ на: комментарий от makoven

Друзья видят в твоем коде строку print line for own line of lines и навсегда перестают с тобой общаться

print line for own line of lines

Но это ведь и правда какое-то говно!

sT331h0rs3 ★★★★★ ()
Ответ на: комментарий от anonymous

А ты все пиаришь эту убогую недоделку?!?

у твоей мамки сынуля такой :)

redhat ()
Ответ на: комментарий от makoven

Ещё один лопух не понимает функциональщину.

anonymous ()

Питоно-рубипараша все в TypeScript.

ritsufag ★★★★★ ()
Ответ на: комментарий от redhat

чееоооо? я про него слышу второй раз, первый был полгода назад в новости про запуск.

anonymous ()
Ответ на: комментарий от anonymous

чееоооо? я про него слышу второй раз,

Ты не в тренде, ты безнадежно отстал и устарел.

Стоит собрать и попробовать, он уже вполне юзабельный, хорошо выглядит (особенно в теме ui One), нужные плугины есть, особо ненужные — в зачаточном состоянии, но основное уже всё работает.

redhat ()
Ответ на: комментарий от makoven

Незнание базовых вещей в js coffeescript фанатиками и их всеобъемлющее неосиляторство - пока что первая реальная проблема, которую ты назвал

vertexua ★★☆☆☆ ()
Ответ на: комментарий от makoven

А зачем хранить сгенерированные файлы в репозитории?

hlebushek ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.