ts <decoux / moulon.inra.fr> writes:

> >>>>> "D" == Dave Thomas <Dave / PragmaticProgrammer.com> writes:
> 
> D>    [1, 2, 3].each {|@i| }
> D>    p @i  #=> 3
> 
> D> Here the formal arguments to a block affect non-locals. It seemed
> D> analogous.
> 
>  It seems, but with |@i| this a multi-assignement (NODE_MASGN) and this is
> not the case with def()

Clearly so, but ignoring the current implementation, from the outside
you could consider them similar situations. In both cases, assignment
to a 'parameter' affects external state. In the limited case of
allowing instance variables as parameters to initialize, that seems to 
be a fairly simple and contained extension.


Dave