From: ts Date: 2004-04-15T19:50:51+09:00 Subject: Re: New Local Variable Scope rule >>>>> "D" == David Alan Black writes: D> That may be what will happen: D> l = lambda { a = 1 } D> p a # nil (not error) Well, this is what I've trying to say l = lambda { a = 1 } # 2.0 is similar to a = nil l = lambda { a = 1 } # 1.8 D> (Of course, I'm one of the few who think the way block variables work D> pre-2.0 is fine, but that's another story :-) 1) confuse some persons, which see |a, b| as a declaration rather than an assignement 2) there are really 2 different uses for block-local variable. In an iterator probably you'll expect the 2.0 behaviour, in a Thread (or perhaps a Proc) probably you expect the 1.8 behaviour Guy Decoux