Compare with Go, where you can easily read the whole spec and keep the whole language in your head: http://golang.org/ref/spec
The "The Smalltalk Language" section of the last ANSI Smalltalk draft is a more reasonable 28 pages.
I won't say it's bad, as it is nice to work with when you're writing it, and I do quite like it. But I could never recommend it to someone who didn't have a good knowledge of javascript already.
- Implicit is better than explicit
- There is more than one way to do it
These are the exact _opposite_ of a couple of the principles of the design of Python[1].To that end, the docs on Coffeescript.org are the reference documentation (as they are the only official documents to reference) and they've suited me just fine. I get the sense that you're looking for a document in the style of ECMA-262, rather than one in the style of MDN.
describe 'Calculator', ->
it 'can add two positive numbers', ->
result = calculator.add 2, 3
assert result is 5
it 'can handle negative number addition', ->
result = calculator.add -10, 5
assert result is -5
Mandatory parentheses make significant whitespace lose much of its appeal when passing a block construct into a function. This is a large part of the reason why Python limits lambdas to a single line...Python doesn't limit lambdas to a single line, but to a single expression. That is a rather different constraint.
And the worst part of it is, nearly all the confusing/ambiguous/different compilation examples given rely on the undocumented rules CoffeeScript uses for parsing. It's amazing that, still, CoffeeScript's entire documentation is basically a "getting started" guide, and there is simply no reference documentation.