3 ms·
Implementation choices have costs and benefits. One cost of the original MRI (Matz Ruby Interpreter) is that it used "green threads" that could only be schedul
by RickHull 15y ago
Implementation choices have costs and benefits. One cost of the original MRI (Matz Ruby Interpreter) is that it used "green threads" that could only be scheduled within the process (running on a single CPU) and not across CPUs. Another is that it was written in C, and some of C's semantics and implementation choices bubbled up into artifice that the Ruby user needs to know and care about. As well, the performance of MRI, due to some early design choices, has some limitations.
An implementation of Ruby on a new platform, JVM in this case, allows new choices to be made, involves a different set of tradeoffs, etc. RAM usage, startup time, JIT features, etc -- these are all factors.
- dean 15y agoInteresting. I may be revealing some biases here, but I'm surprised that the performance of the C implementation is limited (I assume you mean slower) compared to the Java implementation.