From: Takaaki Tateishi Date: 2002-06-18T11:55:11+09:00 Subject: [ruby-dev:17501] Re: blocks and local variables 立石です. とりあえず,以下の点について現在の僕の考えを挙げておきます. At Tue, 18 Jun 2002 08:08:42 +0900, > 「逆に仕様を分かりにくくしている」というのは、そうかもしれな > いなと思いますが、では > > * なぜ分かりにくくなっているのか 明示的な宣言がないことではないでしょうか? そのため,どこで宣言されるのか分かり難いということだと思います. > * どうすれば分かりやすいのか そのスコープで初めて使われる変数への代入は宣言であるというのは, まずスコープが分からなければならず,次に初めの変数であるという ことが分からないといけません. 入れ子になったスコープではどのスコープに対して初めて使われる変 数なのかが複数の意見に分かれてしまいます.これは現在の議論で起 こっていることですね. では,初めの変数であるということを見分けるためにはどういうもの が望ましいかというと,よりスコープの範囲が短い方が見やすいと僕 は考えます. スコープ外(ブロック外)のパラメータを参照したいときには,パラメー タ名が重なることを避ければ良いだけです. このような考えから,僕は,ブロックパラメータはブロックにローカル である方が良いと考えています. -- Takaaki Tateishi