藤本です。
以前、人の書いたC++のプログラムを読んでいて、mapのイ
テレータを使っている
簡単なコードが何をしてるのかしばらく理解できなかったことがありま
す。C++の
map(順序あり)をRubyのHash(順序なし)のよ
うなものであると、自分が勘違いし
ていたのが原因でした。
勘違いとはいえこのような経験をした立場からは、Hash自体の順
序の意味を簡
単に変えてしまって本当にいいのかなという疑問が残ります。
と、スレッドを読んでいて考えていたのですが…
On 2007/08/21, at 19:29, SASADA Koichi wrote:
> ささだです。
>
> Akinori MUSHA wrote:
>> 1.9 においても、 Hash という名前のクラスで順序
>> を保証することには
>> 反対です。別クラスにするか、せめて生成時オプションにしてほし
>> い。
>
> 理由はなんでしょう。実装上たまたま順序が保障されているという
> のは良
> いでしょうか。それとも、これも混乱を招く(保障されてると思って
> どんど
> んコードを書いちゃう人がいる)からダメでしょうか。
> 名前を変えるのは賛成なのですが、問題なのは多分リテラルで簡単
> に書け
> るかどうかってことだと思うのですよねぇ。
順序が保障されているHashのリテラルが書けると、Objective-
Cのメソッ
ド呼出しに便利だということに気付きました。
藤本尚邦