On Dec 21, 2010, at 7:12 AM, Charles Oliver Nutter wrote:

> JEG is claimed we "suck at process management" because of two reported bugs we didn't immediately fix
That's not really why I said that.

I was once trying to use JRuby in a POSIX environment where I needed Unixy process management.  It had to interoperate with other processes that expected these behaviors.  I ran into at least two challenges and filed the bugs I had seen.  In your replies, you gave me some workarounds and explained why things were purposely working this way.  At this point I realized JRuby was the wrong tool for the job and switched.

My opinion is that Ruby grew up in Unix and it purposely exposes a lot of Unixisms.  I think that means exit!() should kill my process now and exec() should replace my process.  That's what those methods mean to me. hen you give me reasons why that isn't a good idea, it makes me feel like JRuby has stopped trusting me to make the best decisions.  That feels like the Java way, but not the Ruby way, in my opinion.

However, these feelings of mine are not why I said JRuby sucks at process management.  I said it because your exec() doesn't really exec() on purpose.  Your exec() isn't a POSIX exec().  I don't feel that's debatable.  It's just a fact.

So I'll refine my statement a little:  JRuby sucks at POSIX style process management.

James Edward Gray II