1.3.1 – APRIL 10, 2012
* CoffeeScript now enforces all of JavaScript's Strict Mode early syntax
errors at compile time. This includes old-style octal literals, duplicate
property names in object literals, duplicate parameters in a function
definition, deleting naked variables, setting the value of eval or
arguments, and more. See a full discussion at #1547.
* The REPL now has a handy new multi-line mode for entering large blocks of
code. It's useful when copy-and-pasting examples into the REPL. Enter
multi-line mode with Ctrl-V. You may also now pipe input directly into the
REPL.
* CoffeeScript now prints a Generated by CoffeeScript VERSION header at the
top of each compiled file.
* Conditional assignment of previously undefined variables a or= b is now
considered a syntax error.
* A tweak to the semantics of do, which can now be used to more easily
simulate a namespace: do (x = 1, y = 2) -> ...
* Loop indices are now mutable within a loop iteration, and immutable between
them.
* Both endpoints of a slice are now allowed to be omitted for consistency,
effectively creating a shallow copy of the list.
* Additional tweaks and improvments to coffee --watch under Node's "new" file
watching API. Watch will now beep by default if you introduce a syntax error
into a watched script. We also now ignore hidden directories by default when
watching recursively.
CoffeeScript is a little language that compiles into JavaScript.
Underneath all of those embarrassing braces and semicolons,
JavaScript has always had a gorgeous object model at its heart.
CoffeeScript is an attempt to expose the good parts of JavaScript
in a simple way.