I've written up some interesting use cases on this here: http://dev.zeraweb.com/design-blog-14/ My experience with this is that Matz is doing the right thing. It is counterintuitive that sending a message to an object should bypass the guidelines set by the class author. Given that 1.9 is willing to sacrifice backwards compatibility in order to improve the language, I don't really see a problem with fixing this semantic mismatch. Minor sidebar: One thing I think is a little confusing is the version numbering. Normally, you wouldn't expect a minor release version to break backwards compatibility. I am not familiar with the roadmap, but as a Ruby user, I find this a bit confusing. I wonder if people will upgrade too quickly, not realizing what they are getting into. This is particularly relevant to send, since I think changing send's semantics can introduce some very subtle bugs that might not show up right away. For example, a use of send that invokes a private method will now invoke method_missing, which in turn might do something that seems reasonable but is not the intended behavior. Dan