Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

At the time of OCaml choice at JS (I guess it was circa 2008-2010; I also strongly suspect that it was not at the start of JS) Haskell already had multithreaded RTS with very green threads, software transactional memory and multicore support.

[1] https://downloads.haskell.org/~ghc/6.6.1/docs/html/libraries... (Control.Concurrent contains forkIO - thus, green threads!)

Guessing from what information is available to me, it was a matter of personal preferences, not technical decision.

PS From [2] in some other comment, it really was a matter of personal choice.

[2] https://queue.acm.org/detail.cfm?id=2038036

At [3] it can be found that ghc had green threads at 2002.

[3] https://downloads.haskell.org/~ghc/5.04/docs/html/base/index...



> At the time of OCaml choice at JS (I guess it was circa 2008-2010; I also strongly suspect that it was not at the start of JS)

You're right that it wasn't OCaml from the beginning, but I believe it was quite a bit earlier than that. The firm dates to 1999-2000, and OCaml came into the picture sometime around 2004.

The reason they avoided Haskell, supposedly, is the lack of predictability in its performance, largely due to its laziness. OCaml, meanwhile, has a fairly straightforward compilation that allows moderately experienced developers to have a very good idea of what the corresponding machine code will be.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: