Rubyについて Part 15
■ このスレッドは過去ログ倉庫に格納されています
0451447
05/03/07 00:10:45メソッド定義内でも同じように議論もできるんだけど、 Ruby の現在の実装だ
とメソッド内は完全に別世界だから例として上手くないかな、と思ったので
Proc にした。たとえば、
a = 10
def x()
a
end
っていう時の a は Ruby だとエラーになっちゃうからね。 Scheme みたいな
レキシカルスコープな言語で似たようなことを書くと、 a は 10 を指してエ
ラーにならない。とはいえ、後ろの m をメソッドじゃなくて Proc にした方
が簡単だったかな。
ちなみに、動的スコープだと、たとえば再帰関数で毎回同じ引数を渡したりと
かいったことを省略して大域的に書いたり、ということを比較的容易に書ける
らしい。実は漏れもよくは知らない。でも、現状で動的スコープ言語が今では
ほとんどないということからして、やっぱりわかりづらいんだと思う。
■ このスレッドは過去ログ倉庫に格納されています