4 ms·
It mentions Rubinius briefly (it doesn't have a GIL). Slightly of topic, but can anyone with better knowledge then myself of ruby implementations and internals
by sandstrom 12y ago
It mentions Rubinius briefly (it doesn't have a GIL).
Slightly of topic, but can anyone with better knowledge then myself of ruby implementations and internals explain why it hasn't caught much of a following (what it seems anyway, I may be wrong here).
To me it seems like a pretty good idea to implement Ruby mostly in Ruby, since it makes it easier to get contributions (especially to less performance-sensitive parts of the language, e.g. parts of the standard lib).
- montanalow 12y agoRubinius is neat, but for me personally (and I think most of the community) it's performance. Writing C enables optimizations by hand that still yield very significant performance gains over the best of what any other high level language (java, c++, ruby) can muster. I don't want to write C, but I'm glad someone else does so I get the benefits when I write Ruby.
- FranzVonSuppe 12y agoI don't understand how you can say Java, C++, and Ruby in the same breath. They are not at all alike. Also what optimizations are available to C which are not in C++? C++ is (almost) a strict superset of C.
- cremno 12y agoCRuby's standard library is partially written in Ruby. https://github.com/ruby/ruby/tree/trunk/lib https://github.com/ruby/ruby/tree/trunk/lib Rubinius' one (called RubySL) also includes some rewrites of standard libraries, that were originally written in C. And as you may know, Rubinius itself is just Ruby code to some extent. https://github.com/rubysl https://github.com/rubysl mruby has some Ruby code, too. Even some parts of the core language are written in it. https://github.com/mruby/mruby/tree/master/mrblib https://github.com/mruby/mruby/tree/master/mrblib
- Argorak 12y agoRubinius has been traditionally lagging behind in features (e.g. for a long time didn't implement 1.9 string encoding properly) and wasn't necessarily _that_ much faster. Also, people that do want to work at the core of a language usually have knowledge of multiple and don't mind using C or any other implementation language. Ruby stdlib is mostly written in Ruby, btw. Still, with Rubinius 3.0 coming up, I'm very interested what is coming there.