2008年2月23日

[ruby-list:44686] Re: Hash#<<

まつもと ゆきひろです

In message "Re: [ruby-list:44679] Hash#<<"
on Fri, 22 Feb 2008 17:32:16 +0900, "ARAI Shunichi" <arai@xxxxx> writes:

|以前、Hashに+を作ろうと提案して却下されたのですが、
|ベターなアイデアをもって再提案に参りました。
|

|<<と>>でどうでしょうか?
|上書きされつつ追加されるイメージが表現されているかと。

a << b

が、a.merge(b)と同じ意味を持つ、ということで良いですか?
また、

a >> b

は今度はb.merge(a)であるということ?

仮にそうだとして話を進めると、C++で「<<」演算子が再利用される
ようになってからこのかた、「<<」演算子はコンテナに要素を追加
するというニュアンスで使われているように思います。

cout << "hello" << " " << "world" << nl;

ここからの類推で言うとHashに「<<」演算子を追加したとしても、

a << b

は a.store(*b) と期待されてしまうのではないでしょうか。少な
くとも私は最初そう思いました。

名前って難しい。

まつもと ゆきひろ /:|)

投稿者 xml-rpc : 2008年2月23日 16:08
役に立ちました?:
過去のフィードバック 平均:(0) 総合:(0) 投票回数:(0)
本記事へのTrackback: http://hoop.euqset.org/blog/mt-tb2006.cgi/70241
トラックバック
コメント
コメントする




画像の中に見える文字を入力してください。