Re:A Brief History of the BEAM Compiler
by jxub on Thursday August 02, 2018 @03:14PM
(#17674585)
The thing is that MRI Ruby is effectively single-threaded (unless you use things like concurrent-ruby which aren't that performant anyway) and threads can be blocked waiting for I/O, in fact they do most of the time, and is in I/O where Erlang really shines thanks to BEAM's nature of lightweight preemptive processes.
[ Parent
| on HN ]
Re:A Brief History of the BEAM Compiler
by jashmatthews on Thursday August 02, 2018 @03:47PM
(#17674850)
CRuby is multi-threaded with a GIL. CRuby also supports light-weight cooperative threads called Fibres, which are used to build things like: https://github.com/postrank-labs/goliath/
JRuby has no GIL, JIT, and is significantly faster than BEAM.