On Sunday 03 June 2001 02:51, you wrote:
> Jim Freeze wrote:
<snip>
> a = 0; x = 5
> 3.times{|a| x+=a }
> # both a and x are changed.
>
> 3.times{|b| z=b }
> # neither b nor z are here

To me it seems the problem here is that there should be a difference between 
args passed to the receiver 3.times and arg(s) that .times passes to the 
block.  .times should have it's own arglist that is not to be confused with 
the block (with is also just an arg to .times):

3.times(a){|a| x+=a} # (a) and |a| are not the same a

<snip>
> Guy N. Hurst