Wow, I wish this is what coffeescript was. This has most of the niceties of coffeescript and adds immutability, types, and macros.
I will end up sticking with TypeScript though for anything at work since the type system has more capabilities right now and it is just Javascript with types so it is very simple to use for those with Javascript experience.