Can some explain like I'm 5 the tradeoffs between Go/Scala/JS[node.js]? I've been googlin', and there aren't enough articles that compare and contrast the three.
EDIT: Go is intended to be a systems-programming language with an emphasis not only on runtime efficiency and concurrency, but additionally on such things as compilation speed.
Scala is intended to be a hybrid OO-functional language that is approachable by a broad class of mainstream programmers (i.e., Java programmers), with a type system considerably more sophisticated than Java. The emphasis is, I'd say, on a language that has long-term potential, at the cost of a somewhat problematic toolchain.
JavaScript's enormous advantages are that it is universally available, easy to approach, and flexible enough to support functional techniques.
* Go: statically typed, no type parametrization, good support for CSP-like concurrency, deeply imperative language. Proponents site its speed of compilation, simplicity, and growing community.
* Scala: statically typed, modern and sophisticated type system, supports OO and functional programming, runs on the JVM, has good concurrency support.
I really don't know enough about Node.js to say anything about it. It's Javascript, so it's dynamic typing and a mix of OO and functional programming.
Scala is supposed to be a better Java.
JS is supposed to be popular.
EDIT: Go is intended to be a systems-programming language with an emphasis not only on runtime efficiency and concurrency, but additionally on such things as compilation speed.
Scala is intended to be a hybrid OO-functional language that is approachable by a broad class of mainstream programmers (i.e., Java programmers), with a type system considerably more sophisticated than Java. The emphasis is, I'd say, on a language that has long-term potential, at the cost of a somewhat problematic toolchain.
JavaScript's enormous advantages are that it is universally available, easy to approach, and flexible enough to support functional techniques.