[#47861] ruby1.9.2 ruby-debug19-0.11.6.gem のローカルインストール — eiichi_maekawa@...

20 messages 2011/02/10
[#47874] Re: ruby1.9.2 ruby-debug19-0.11.6.gem のローカルインストール — eiichi_maekawa@... 2011/02/15

前川です。

[#47875] Re: ruby1.9.2 ruby-debug19-0.11.6.gem のローカルインストール — OZAWA Sakuro <sakuro@2238club.org> 2011/02/15

さくです。

[#47876] Re: ruby1.9.2 ruby-debug19-0.11.6.gem のローカルインストール — eiichi_maekawa@... 2011/02/15

[#47877] Re: ruby1.9.2 ruby-debug19-0.11.6.gem のローカルインストール — OZAWA Sakuro <sakuro@2238club.org> 2011/02/15

さくです。

[#47878] Re: ruby1.9.2 ruby-debug19-0.11.6.gem のローカルインストール — Kenta Murata <muraken@...> 2011/02/15

むらたです。

[ruby-list:47820] Re: Ruby 1.9 Range オブジェクトのメンバテスト挙動について

From: "KISHIMOTO, Makoto" <ksmakoto@...4u.or.jp>
Date: 2011-02-01 23:22:23 UTC
List: ruby-list #47820
きしもとです

報告ありがとうございます。
が、一点。関係ない話題のメールへのリプライで送らないようにしてください。
[ruby-list:47817] へのリプライになっていました。

====

仕様変更にあたると思うのですが、Time#succ が 1.9 では obsolete に
なっています。doc/ChangeLog-1.9.3 に、

        * time.c (rb_time_succ): make Time#succ obsolete since time is not
          a discrete value.

とあります。本の記述に従うとすると、数値でもないし離散値でもない
(なくなった)ので、Range の端点として使えなくなった、ということ
だと思います。

On Wed, 2 Feb 2011 00:45:12 +0900
__JC__ <02ybur@gmail.com> wrote:
> JC と申します。初めまして。
> 
> Time オブジェクトを端点に持つ Range オブジェクトの挙動が
> ruby 1.8 と ruby 1.9 で異なりました。 1.8 と 1.9 の仕様の
> 違いの問題かとも思いましたが、念のため報告いたします。
> 
> ## コード (eg.rb)
> t0 = Time.now
> t1 = t0 + 1
> t2 = t0 + 2
> puts (t0..t2).include?(t1)
> 
> ## コード実行結果 (ruby 1.8.7)
> 
> ~/ > /usr/bin/ruby --version
> ruby 1.8.7 (2009-06-12 patchlevel 174) [universal-darwin10.0]
> ~/ > /usr/bin/ruby eg.rb
> true
> 
> ## コード実行結果 (ruby 1.9.2)
> ~/ > /usr/local/bin/ruby --version
> ruby 1.9.2p136 (2010-12-25 revision 30365) [x86_64-darwin10.6.0]
> ~/ > /usr/local/bin/ruby eg.rb
> eg.rb:4:in `each': can't iterate from Time (TypeError)
> 	from eg.rb:4:in `include?'
> 	from eg.rb:4:in `include?'
> 	from eg.rb:4:in `<main>'
> 
> ruby 1.9 の include? は Range の端点が数値の時は、1.8 と同様に連続範囲
> メンバテストを行い、端点が数値でなければ離散範囲メンバテストを行うと本にも書いて
> ありますので(プログラミング言語 Ruby D.Flanagan氏, Matz氏; O'REILLY p.74)、
> その意味では上記は本にも書いてある通りの挙動をしています。
> 
> 仕様の問題ですので、ポストするか多少悩みましたが、case 等値 === にも影響して
> おりますので念のため報告いたしました。

In This Thread