Hacker News new | ask | show | jobs
by drnicwilliams 5366 days ago
Three quotes, hopefully not out of useful context, that seem incongruous:

"Rubinius is about the join JRuby and MacRuby in the realm of GIL-less Ruby implementations"

"I spend my free time working on an alternative Ruby implementation which doesn’t use a GIL (MacRuby)"

"I respect Matz’ decision to keep the GIL even though, I would personally prefer to push the data safety responsibility to the developers. However, I do know that many Ruby developers would end up shooting themselves in the foot"

So developers using GIL-less MacRuby, JRuby and Rubinius are prone to foot shooting? I wish they'd blog about this more, I've never once heard a MacRuby or JRuby developer blog saying "I went back to MRI because I needed my Ruby code to be run more safely".

2 comments

I can't speak for JRuby or Rubinius, but in MacRuby one of the main reasons that lack-of-GIL is not a more serious problem is because MacRuby has the Dispatch library (based on libdispatch, a.k.a. Grand Central Dispatch) which makes working with multiple threads safe again.

If you were to invoke Ruby's Thread library directly in MacRuby, you would find that things get crashy rather quickly!

We run heavily-threaded code in jruby in production, but we also test on MRI because it detects and explicitly fails on deadlocks rather than just locking up.