[#47045] Is Ruby1.8.7 end-of-life? — "ISHIKAWA Takayuki" <rechka_osaka@...>
こんにちは、石川です。
4 messages
2010/05/03
[#47049] fileのopenに関する動作についての質問 — 高橋作郎 <sakurou3960@...>
はじめまして。
14 messages
2010/05/04
[#47050] Re: fileのopenに関する動作についての質問
— "Hideo Konami" <konami@...>
2010/05/04
小波と申します。
[#47051] Re: fileのopenに関する動作についての質問
— 高橋作郎 <sakurou3960@...>
2010/05/04
2010年5月4日21:18 Hideo Konami <konami@kyoto-wu.ac.jp>:
[#47093] [ANN] Ruby/Tk-Kit for RubyInstaller 1.9.1p378rc2 — Hidetoshi NAGAI <nagai@...>
永井@知能.九工大です.
6 messages
2010/05/20
[#47104] rails3 ドキュメント翻訳について — Makoto Kuwata <kwa@...>
桑田といいます。
11 messages
2010/05/24
[ruby-list:47080] Re: [ruby-list:47079] 1.8と1.9のProc化されたブロック内の定数の違い
From:
Moru <lateau@...>
Date:
2010-05-12 15:51:18 UTC
List:
ruby-list #47080
モルです。 instance_evalでの働きは多分問題ないと思いますが、 extend Y 1.9ではここでNameErrorが起きてしまいますね。 extend X::Yに直せば一応解決はできますが、X::Yのように宣言はされているので、X側からYをYで参照できなくなるのは、何が原因何でしょうと。 何か変わったんですかね。 誰かご存知の方は教えてください。 -- Moru 2010/5/12 arton <artonx@yahoo.co.jp>: > artonです。 > 以下の(相当恣意的な)スクリプトが1.8.7と1.9.1で異なる動作をするのは、意 > 図的な非互換性でしょうか? > > #----start > puts RUBY_VERSION > class X > module Y > def hello > puts 'hello' > end > end > def make_proc(&block) > block > end > def test > make_proc do > extend Y > end > end > end > x = X.new > a = Object.new > a.instance_eval &x.test > a.hello > #---end > > ruby-1.8.7ーp249では > 1.8.7 > hello > と、動きます。これが当方が期待している動作です。つまり、Yはextend Yを記 > 述した位置で評価された状態です。 > しかし、ruby-1.9.1-p378 では、 > 1.9.1 > m.rb:13:in `block in test': uninitialized constant Object::Y (NameError) > from m.rb:19:in `instance_eval' > from m.rb:19:in `<main>' > となります。Yは、instance_evalされた時点での評価となるようです。 > > -- > arton <artonx@yahoo.co.jp> > > -------------------------------------- > 2010 FIFA World Cup News [Yahoo!Sports/sportsnavi] > http://pr.mail.yahoo.co.jp/southafrica2010/ > >