Kernel#method used in examples but it seems that both methods are relying on implementationModule variable.
JRuby master (actually proper implementation called in RubyIO):
>> s0.method(:inspect)
=> #<Method: UNIXSocket(Kernel)#inspect>
MRI:
[17] pry(main)> s0.method(:inspect)
=> #<Method: UNIXSocket(IO)#inspect>