まつもと ゆきひろです

In message "[ruby-dev:7727] Re: new syntax (Re: Re: Ruby 2.0       の話題解禁)"
    on 99/08/19, 石塚圭樹 <keiju / Rational.Com> writes:

|>もともと obj.foo = val は「objのfooという属性をvalにする」という仮想的
|>な意味なわけですから、obj.foo(a)=valは「objのfoo(a)という属性をvalにす
|>る」という意味がとれる文脈でならば問題ない使い方でしょうし
|
|objのfoo(a)という属性って微妙な概念ですよね. パターンとしては2通りあって
|
|* (obj.foo)[a]
|* obj[a].foo
|
|他の意味の場合もあるのかしら??

さあ、私は前者しか考えていません。イメージとしては後者はやり
すぎって気がします。

|>逆にそういう意味にとれない場合に使うのははっきり言っ
|>て乱用でしょう。しかし、乱用される可能性があるからという理由
|>では禁止する必要はないと思います。
|
|禁止と言うか実装しない理由ってことですよね. でも, Rubyってコーディングレ
|ベルにおける松本氏のポリシーがかなり入っていると思いますので, 乱用するこ
|とによって可読性/保守性が下がるのだったら, 十分採用しない理由になってい
|ると思うんですが...
|
|ただし, RubyのほうがC++よりはまだよいと思います. 

ま、私のポリシーを反映しているのは確かだと思います。Rubyを使
うとだんだん私のポリシーに汚染されてしまうと言う。これではま
るで『バベル17』だ。

|>とはいえ、採用する前にもうちょっと考えた方が良いような予感が
|>しているのも確かなんですが。
|
|私も絶対反対と言うわけでもないんですけどね. 上記のC++の話もあってあまり,
|印象がよくないのでした.

そーですねえ。だれか私の代わりにいろいろ考えてみてくれません
かねえ。
                                まつもと ゆきひろ /:|)