まつもと ゆきひろです

In message "[ruby-dev:6996] Local variable in for block"
    on 99/05/26, Akira Endo <akendo / t3.rim.or.jp> writes:

|listとdevの全メール読破中です。かなりくたびれてきましたが、
|有用な情報をピックアップして、ruby traps & tips を編集中
|です。

ありがとうございます.

|trapの一番目は、動的ローカル変数のスコープになる予定ですが、
|forで動的ローカル変数が導入されるのを、whileやuntilと同様に
|静的に直すお考えはお持ちでないでしょうか。forの制御変数が
|外側で、中で導入されたローカル変数が動的、というのがどうも
|いつまでもひっかかるものですから。

forですよね.ブロックじゃなくて.

forは新しいスコープを導入しない(中で導入されたローカル変数が
動的にならない)というのが仕様のつもりです.もしなっていれば
それはバグです.

  for i in 1..1
    j = i
    p defined? i
    p defined? j
  end
  p defined? i
  p defined? j

  <結果> 1.2.x, 1.3.xともに
  "local-variable"
  "local-variable"
  "local-variable"
  "local-variable"

大丈夫のようですね.
                                まつもと ゆきひろ /:|}