>>>>> "B" == Brian Candler <B.Candler / pobox.com> writes:

B> Essentially, we have four different behaviours now

 No, there are only 2 cases. No need to give complex explanation for
 something which is simple.

 What you call a "block parameter" don't exist, this is is *just* an
 assigned variable : understand this and you'll understand the rules used
 by ruby actually.

Guy Decoux