もりきゅうです。 matz / ruby-lang.org (Yukihiro Matsumoto) wrote: > ブロックパラメータの最後の値を持ち出すのに使っている例はそれ > なりにあるようです。ということで、互換性の観点から今のままで > ブロックパラメータをブロック局所変数にすることはできません。 > > 以前、こういうのを考えてました。 > > foo{<a>...} > > で、aをブロック局所にする。 > > 別にあきらめてませんが、なかなか実装できなくて(記法に対する > 反対も結構あったし)、パラメータだけ局所化できても、変数も局 > 所化したいというニーズにどう対応するかなどの課題もありますし。 パラメータを局所化したい人は変数も局所化したいだろうということで foo{private|a|...} foo do local|a|... end のように隙間で指定してみるというのはどうか。 || がないときはどうするか? foo{local ...} foo do private ... end まあ許せる。互換性もとれる。 ---- YOSHIDA Kazuhiro moriq / moriq.com http://www.moriq.com/