From: Hiro Asari Date: 2009-11-03T22:22:58+09:00 Subject: [ruby-dev:39622] Re: [Bug #2323] "Z".."Z".succが空 浅里です。 2009/11/2 Nobuyoshi Nakada : > なかだです。 > > At Mon, 2 Nov 2009 16:19:40 +0900, > Hiro Asari wrote in [ruby-dev:39604]: >> surfboard:~$ ruby1.9 -v; ruby1.9 -e 'p ("Z".."Z".succ); p ("Z".."Z".succ).to_a' >> ruby 1.9.2dev (2009-11-02 trunk 25625) [x86_64-darwin10.0.0] >> "Z".."AA" >> [] > > こんなところでしょうか。 このパッチで件の問題は解決されていますが、ちょっと別なところで問題になるかもしれません。 このパッチを当ててみたところ、"Z".."a"は空です。1.8では["Z"]が返ってきます。 更に、 http://redmine.ruby-lang.org/issues/show/1891にあるように、 パッチ無しでは["Z", "[", "\\", "]", "^", "_", "`", "a"]です。 これに対応したリビジョン(r24573)では加えて:Z..:aが認められていて、 それにはアスキー配列に則ったシンボルが含まれています。 個人的には"Z".succが"AA"であるならば、二つ以上の要素を持つ"Z"から始まるRangeは"AA"を含むべきだと考えます。 Rangeを半順序集合に定義するのも可能とは思いますが、特別な動きをする事があるのならば、 それは明確に書かれていないと混乱を招くと思います。 参考までに指摘しておきます。 -- Hirotsugu Asari