2011年2月23日

[ruby-list:47919] Re: 2種類のリテラル

郡司と申します。

#識者ではないので完全に雑談です。
#ちゃんとした方のフォローが待たれます‥‥。

> えぐち@エスアンドイーです

> Immutable の特徴の一部な気がします。


「同じリテラルであれば同一のオブジェクト(同一のObject IDのオブジェクト)
が返ること」

と、

「返ってきたオブジェクトがImmutableであること」

とは、独立な気がしますが、どうでしょうかねえ。

たまたまそうである、というだけで、破壊可能なオブジェクトが返ってきても
よさそうな気がします。ただ、そんなもの(毎回同じオブジェクトを返すが、
そのオブジェクトは破壊可能)はなさそうですけどね。


> Immutable 固有の特徴ではない、、かもしれない。

もう完全に脱線気味なのですが、そういえばPythonの文字列は
Immutableだったなあ‥‥などと思い出して実験してみたところ、
なんだか不思議な結果になりました。

--------
>>> a = "aaa"
>>> b = "bbb"
>>> ab = a + b
>>> id("aaabbb")
140248337377680
>>> id(ab)
140248337377776
>>> id("aaabbb")
140248337377584
>>> id(ab)
140248337377776
>>> id("aaabbb")
140248337377680
>>>
--------

#ここまで来ると、さすがにRubyの話ではないので、
#Pythonに詳しい方に聞いてみたほうがいいのでしょうね‥‥。


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




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