大谷です。

この記事ですが、私も今日同じ事に気づいて、ログを検索してこの記事が引っかかりました。
ところが、1.9.2だと異なる結果(直感通り全範囲を生成)になります。
リファレンスを見ると、1.8も1.9も、Range#eachはsuccを使って実現していると
書いてあるのに、結果が異なるのは何故なのでしょう?

1.9.2でも ("!!".."!~").to_a と2文字にすると "!9" で止まりますね。
eachから呼ばれる1文字の場合のsuccだけ特別処理なのですかね?


From: "Hideo Konami" <konami / kyoto-wu.ac.jp>
Subject: [ruby-list:46993] ASCII 文字の連続性について
Date: Sat, 3 Apr 2010 12:22:09 +0900
> 小波です.
> 
> ASCIIの可読文字の配列を生成したいと思って,次のようにしてみました.
> 
> p (0x20.chr .. 0x7e.chr).to_a
> 
> 結果は次のようになります.
> 
> [" ", "!", "\"", "#", "$", "%", "&", "'", "(", ")", "*", "+", ",", "-", ".", "/", "0", "1", "2", "3", "4", "5", "6", "7", "8", "9"]
以下略

-- 
OOTANI TAKASHI <tksotn / mail.707.to>