From: dagbrown@... (Dave Brown) Date: 2004-04-19T04:14:10+09:00 Subject: Re: New Local Variable Scope rule In article <4082CA8A.7010605@weirichhouse.org>, Jim Weirich wrote: : David Alan Black wrote: : > Is a 'local' keyword being introduced in 2.0? I can't find mention of : > it. : : All local would be is ... : : def local : yield : end Hrmm. Not QUITE. It complained at me when I tried that. irb(main):001:0> def local;yield;end => nil irb(main):002:0> local do |x| x=32;p x;end (irb):2: warning: multiple values for a block parameter (0 for 1) from (irb):1 32 => nil A slight variation on that though... irb(main):007:0> def local(&block);yield block;end => nil irb(main):008:0> local do |x| x=32; p x; end 32 => nil irb(main):009:0> x NameError: undefined local variable or method `x' for main:Object That works nicely. --Dave