I was surprised to observe the following:

def foo
    "this is a test"
end
==> nil

m1 = method :foo
==> #<Method: Object(Object)#foo>

m2 = method :foo
==> #<Method: Object(Object)#foo>

m1 == m2
==> false

Is this really correct behavior?  I would have expected m1 == m2 to be
true, unless I am really missing the purpose of the 'method' method.

--Mirian