CoffeeScriptRedux
                                
                                 CoffeeScriptRedux copied to clipboard
                                
                                    CoffeeScriptRedux copied to clipboard
                            
                            
                            
                        `throw` is no longer an expression.
In jashkenas/CoffeeScript, the following is valid:
foo or throw "bar"
It compiles to this:
foo || (function() {
  throw "bar";
})();
The same code does not compile on redux.
Maybe this was intentionally left out, in which case, I'm perfectly fine with that, it's not exactly an essential feature, but it is quite handy and I couldn't see it mentioned anywhere. Feel free to close this if you don't think it's relevant.
Interesting. I didn't know throw could be used as an expression (i assumed throw and return were the only not valid expressions). I'd always prefer doing:
throw "bar" unless foo
Buuuut, it seems like a bug on Redux, as this does compile:
foo or (throw "bar")
It's a bug. They're both bugs, since throw is a statement in JS. Also, @epidemian: you forgot break and continue.
jashkenas/coffee-script explicitly claims support for throw as an expression, both in the changelog for 1.2.0 ("The throw statement can now be used as part of an expression.") and in the tests.
@kevinmehall: Yep, I believe I was the one that added that support.
edit: Never mind, it was Jeremy.