I see at least two problems:
- debugging such code is a nightmare(node.js itself makes it hard enough)
- static analysis of such code is not possible.. yet?
JS and programmers should target Java-like experience imo, static analysis, code assist, dependency check - all of it performed on-the-fly. We won't get it by creating yet another layer above main language, because IDE vendors simply can't cope.