CoffeeScript
Потрогал CoffeeScript. Понравилось.
CoffeeScript - это такой препроцессор JavaScript, который позволяет короче записывать всякие занудные повторяющиеся куски кода, и легче их читать. Например,
array.map( (x) -> x*x )
или
(x*x for x in array)
вместо
array.map( function (x) { return x*x; } );
Исправляет всякие очевидные идиотизмы типа невозможности записать строковый литерал на нескольких строчках.
Сокращает код примерно раза в два, иногда позволяет выкинуть всякие временные переменные заведенные только ради "а то строчка слишком длинная".
Сгенерированный JS код достаточно приличный, что бы можно было копипастить в общий проект, начальник которого не знает про CoffeeScript ( из косяков заметил только "var x; x = 10" вместо "var x = 10" ).
Исправляет синтаксис JavaScript настолько, насколько это возможно оставаясь препроцессором, например String.CharAt(i) исправить на [i] уже не может (динамическая типизация не позволит заменить [] на CharAt только там где надо)
CoffeeScript - это такой препроцессор JavaScript, который позволяет короче записывать всякие занудные повторяющиеся куски кода, и легче их читать. Например,
array.map( (x) -> x*x )
или
(x*x for x in array)
вместо
array.map( function (x) { return x*x; } );
Исправляет всякие очевидные идиотизмы типа невозможности записать строковый литерал на нескольких строчках.
Сокращает код примерно раза в два, иногда позволяет выкинуть всякие временные переменные заведенные только ради "а то строчка слишком длинная".
Сгенерированный JS код достаточно приличный, что бы можно было копипастить в общий проект, начальник которого не знает про CoffeeScript ( из косяков заметил только "var x; x = 10" вместо "var x = 10" ).
Исправляет синтаксис JavaScript настолько, насколько это возможно оставаясь препроцессором, например String.CharAt(i) исправить на [i] уже не может (динамическая типизация не позволит заменить [] на CharAt только там где надо)