--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--