[ruby-list:43925] Re: Hashへの生成順は保障されないのか?
氏久といいます。
既に少し議論に挙げられていましたが…
Hashという名前から明らかに順序を期待しなくなりますが
それでも順序を期待するときにHashを使いたくなることがあるのは
Hashには専用のリテラルがあるからでしょう。
配列、シンボル、正規表現、Rangeなども同様です。
[:a => 1, :b => 2]をOrderedHashにすると、[{:a => 1, :b => 2}]かどうかの
互換性の問題があるので、ここは正規表現を見習って
{:a => 1, :b => 2}o
のように末尾になにか付けるというのはどうでしょうか。
# 個人的には、Setは{:a, :b, :c, :d}のように
# 書けるようになって欲しいと思ってる人