--20cf3054a33d68d9af049e69dc28 Content-Type: text/plain; charset=ISO-8859-1 On Sun, Mar 13, 2011 at 10:47 PM, Aaron D. Gifford <astounding / gmail.com>wrote: > > Correct, a block IS an argument, but of a rather unusual type in that > it may or may not be explicit in the definition of a method that uses > it. > > There is always a block slot, as Ryan said "ALL methods take a block". What is explicit is whether or not you wish to assign it to a named object. Even then, you can turn the implicit block into a Proc object, if you need. def meth proc.call end meth { 1 + 1 } # 2 When I read documents and see a method that does NOT explicitly > mention a block, I assume that it will NOT pass any supplied block on > to yet another method. > > Hence, I expect that the send() documentation really should mention > that any block passed to it IS passed through to the method specified > as the first argument to send(). > > This is really all you needed to say. I think all your code detracted from this point. --20cf3054a33d68d9af049e69dc28--