From: Charles Oliver Nutter Date: 2010-01-24T06:45:17+09:00 Subject: [ruby-core:27744] Re: [Feature #2619] Proposed method: Process.fork_supported? On Sat, Jan 23, 2010 at 3:27 PM, Tanaka Akira wrote: > 2010/1/24 Charles Oliver Nutter : > >> For the fork case, I think it best for us to not bind the method at >> all. There's no good reason for us to bind it, knowing the JVM can't >> fork, and so it will respond_to? => false for both 1.8 and 1.9 modes. > > It breaks code which rescue NotImplementedError. > > If no fork method, calling fork raise NoMethodError. > rescue NotImplementedError don't rescue NoMethodError. Yes, that's certainly true. But etc methods don't raise anything and don't work either. UNIX socket doesn't even get defined or bound on Windows, resulting in a NameError when you try to access it. There's no consistency to any of it. I did try removing fork, and tests in MRI 1.8 and RubySpec both expect it to be there, to be private, and to raise NotImplementedError when called if it's not implemented. So you're right, we can't just remove it. - Charlie - Charlie