<div dir="ltr"><div class="gmail_extra"><br><div class="gmail_quote">On Tue, Jun 17, 2014 at 3:58 PM, John Kemp <span dir="ltr"><<a href="mailto:john@jkemp.net" target="_blank">john@jkemp.net</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

In summary though, I believe that at a "whole-systems" level, node has no particular performance advantage (assuming standard CPU architecture) that would make me choose it over Ruby, Java or Erlang (all of which I find easier to program, for different reasons).</blockquote>

</div><br>In fact, if the Node.js model is so good, I'd go with OCaml+Core.Async any day. Async defines enough tooling through operators that I can get a monad in which my writing style can be direct while having all the advantages of a "non-blocking" system.</div>

<div class="gmail_extra"><br></div><div class="gmail_extra">But the existence of languages like Erlang and Go, the realization Haskell/GHC contains lots of tooling for doing concurrent work kind of tells a story that this might not be enough.</div>

<div class="gmail_extra"><br></div><div class="gmail_extra">And the existence of Mozart/Oz and Erlang also tells a different equally important story about distribution.<br><br clear="all"><div><br></div>-- <br>J.
</div></div>