Contract-based CoffeeScript
Contract-based CoffeeScript
Very interesting fork of CoffeeScript that allows you to do programming by contract. Simple example which specify that a function takes a number as argument, and also returns a number:
id :: (Num) -> Num id = (x) -> x * x