From: John Joyce Date: 2007-03-16T21:10:53+09:00 Subject: Re: to_a It also of course depends on the method. That is why everyone said "most of the time"... It is possible to write your own code where a method call/message could actually change the reciever object. It just isn't usual in Ruby. Also do understand that methods are often oversimplified in human language. The truth is, we "send a message" to an object. The object is the "reciever". If the object knows what to do with that message (if it has the method inside) it will do it. Otherwise the Ruby interpreter (the runtime environment in any OOP language) will move up the responder chain, to the object's parent class/super class. We say it sends the message there. The message will continue being sent until it reaches the root object class or finds a responder. Some of the specifics are different with different languages, and it can get pretty abstract, but it is always the same.