From: 7stud -- Date: 2011-08-01T02:51:01+09:00 Subject: send() docs are wrong obj.send(symbol [, args...]) → obj obj.__send__(symbol [, args...]) → obj Somehow, I don't expect the return value of send() to be the receiver. Let's test send()'s return value using the example provided: class Klass def hello(*args) "Hello " + args.join(' ') end end k = Klass.new x = k.send :hello, "gentle", "readers" puts x.class --output:-- String According to the docs, the return value of send() should be k, the receiver, and k.class would therefore output: Klass. -- Posted via http://www.ruby-forum.com/.