3 ms·
Were Node.js and Go the only two choices considered? Erlang, Haskell, etc seem like they would fit the choice criteria, save for dependency management which is
by jallmann 14y ago
Were Node.js and Go the only two choices considered? Erlang, Haskell, etc seem like they would fit the choice criteria, save for dependency management which is generally handled externally via rebar or such. Works pretty well though. Moreover, Erlang has solutions for the listed pain points of Go -- an excellent scheduler, fast GC thanks to per-process stacks, mature libraries including HTTP, crypto, etc.
Perhaps if they had spent more than 15 minutes deciding on the language...
- voidlogic 14y agoGo 1.1 which will be out soon (maybe this month?) addresses a lot of these pain points to varying extents and is completely backwards compatible with 1.0.X code. Also, I don't know if Erlang would have met their performance needs? http://benchmarksgame.alioth.debian.org/u64/benchmark.php?test=all&lang=go&lang2=hipe http://benchmarksgame.alioth.debian.org/u64/benchmark.php?te...
- Refefer 14y agoErlang is faster than most people give it credit for. I imagine performance might also have made their bullet points, coming from Ruby: http://benchmarksgame.alioth.debian.org/u64/benchmark.php?test=all&lang=yarv&lang2=hipe http://benchmarksgame.alioth.debian.org/u64/benchmark.php?te...
- burntsushi 14y agoYour analysis omits the fact that Erlang and Haskell are mostly functional languages, which is different enough from what most programmers are comfortable with. This is typically a very large barrier to overcome.