

JavaScript the new good parts – Douglas Crockford - phatak-dev
http://phatak-dev.github.io/techtalks/javascript-the-new-good-parts/

======
gavinpc
Can someone explain how TCO is a feature of a language? Does it change the
syntax or grammar in any way? Isn't it an implementation detail that is
invisible to the programmer? What would stop an existing javascript engine
from rewriting eligible functions as constant-space, non-recursive
equivalents?

~~~
hawkice
Most of the concern is whether the spec says compilers/interpreters _must_
perform TCO. If they don't, users can't write that kind of code, because
otherwise, on some users' machines, it will bork the whole site.

