[#21157] あったらうれしいメソッド to_n, to_n!, to_s! — ogino@...

荻野です。あったらうれしいメソッドということで書いてみます。

16 messages 2000/03/03

[#21159] メソッドの入り口 — ogino@...

荻野です。もうひとつご指導ください。

93 messages 2000/03/03
[#21170] Re: メソッドの入り口 — Shin-ichiro Hara <sinara@...> 2000/03/03

原です。

[#21243] Re: メソッドの入り口 — keiju@... (石塚圭樹) 2000/03/07

けいじゅ@日本ラショナルソフトウェアです.

[#21247] Re: メソッドの入り口 — 中村暁史 Nakamura Akifumi <BXQ04723@...> 2000/03/07

[#21267] 引数コピーとオブジェクト指向 (Re: メソッドの入り口) — Hideto ISHIBASHI <s34204@...> 2000/03/08

石橋秀仁です。

[#21272] Re: 引数コピーとオブジェクト指向 (Re: メソッドの入り口 ) — 中村暁史 Nakamura Akifumi <BXQ04723@...> 2000/03/08

[#21276] Re: 引数コピーとオブジェクト指向 (Re: メソッドの入り口 ) — nobu.nakada@... 2000/03/09

なかだです。

[#21279] Re: 引数コピーとオブジェクト指向 (Re: メソッドの入り口 ) — ogino@... 2000/03/09

oop未満の世界観の荻野です。

[#21282] Re: 引数コピーとオブジェクト指向 — Tomoyuki Kosimizu <greentea@...2.so-net.ne.jp> 2000/03/09

越水です。

[#21285] Re: 引数コピーとオブジェクト指向 — ogino@... 2000/03/10

荻野です。

[#21293] Re: 引数コピーとオブジェクト指向 — Matsuo Hisanori <hisanori@...> 2000/03/10

松尾です。

[#21297] Re: 引数コピーとオブジェクト指向 — ogino@... 2000/03/10

荻野です。

[#21302] Re: 引数コピーとオブジェクト指向 — 土岐 仁謙 <toki@...> 2000/03/10

土岐です。

[#21371] Re: 引数コピーとオブジェクト指向 — Matsuo Hisanori <hisanori@...> 2000/03/13

松尾です。

[#21374] Re: 引数コピーとオブジェクト指向 — TADA Tadashi <sho@...> 2000/03/13

ただただしです。

[#21365] Re: 引数コピーとオブジェクト指向 — Matsuo Hisanori <hisanori@...> 2000/03/13

松尾です。

[#21280] raise non-Exception object — Kenichi Komiya <kom@...3.rim.or.jp>

24 messages 2000/03/09
[#21283] Re: raise non-Exception object — nobu.nakada@... 2000/03/09

なかだです。

[#21315] Re: raise non-Exception object — Kenichi Komiya <kom@...3.rim.or.jp> 2000/03/11

[#21342] Re: raise non-Exception object — nobu.nakada@... 2000/03/12

なかだです。

[#21384] ruby 1.4.4 — matz@... (Yukihiro Matsumoto)

まつもと ゆきひろです

35 messages 2000/03/13

[#21442] 配列内のソート — Takayuki Tanaka <tanaka@...>

こんにちは Tanです。

16 messages 2000/03/15

[#21583] ruby for Web — TAKAHASHI Masayoshi <maki@...>

高橋征義です。

27 messages 2000/03/22
[#21584] Re: ruby for Web — "NAKAMURA, Hiroshi" <nakahiro@...> 2000/03/22

なひです.

[#21649] net-1.1.10 — TAKAHASHI Masayoshi <maki@...>

高橋征義です。net/http 使いたおし中。

17 messages 2000/03/27

[#21669] new version of mod_ruby & eRuby — Shugo Maeda <shugo@...>

前田です。

14 messages 2000/03/28

[ruby-list:21428] Re: 引数コピーとオブジェクト指向

From: sho@... (TADA Tadashi)
Date: 2000-03-14 14:27:55 UTC
List: ruby-list #21428
ただただしです。

#まとめて失礼します。

A.中村さん:
>ぎゃははははははは  _(__)ノ彡☆ばんばん! #拝借>るびきちさん
>俺的に今月のヒットっす。attr_dupあっさり敗退。

うーむ、ウケてしまったか……(笑)。思いついたときは頭の中が晴れ上がった
ようないい気分でした:-)

なかださん:
>  そんなはるか彼方まで name (というか変数のエイリアス)が生き残っ
>ていること自体に危険を感じてしまいますが。

松尾さん:
>はるばる10個受け渡すのは中田さんもおっしゃられている通り、設計が悪い可
>能性が高いですね。それに「うっかりsub!」してしまう開発者がいる、という
>前提になってる。

 まぁこれは、わざと極端な例を出しただけなので。でも、やはりどこで誰が
書き換えてしまうかという不安は拭いきれません。不幸にして私は「うっかり
sub!をしそうな開発者がいない」と言いきれるようなプロジェクトを任された
ことがないので、ある程度「安全側」に倒しておきたいという気持ちはよくわ
かるんですよね。クラスライブラリにでもなれば、自分の目が届く範囲でだけ
使われるわけでもないし。

 とりあえず、「dupだけが唯一の正解」というのは、自らの代案をもって撤回
します。unfreezeがなくてホントによかった(笑)。

松尾さん:
>多少開発者のスキルに不安があるなどの理由で、何らかの工夫をするという現
>実的な対応はあって良いと思います。提示されたコードは例外発生で注意を喚
>起し開発者のスキルを高めながら、安全性と開発効率を高い次元で折り合いを
>付けている良い案ではないでしょうか。

 ほめられちった:-) initializeで例外をあげるということは、問題があれば
Personインスタンス生成時に必ずこれを感知できるということです。これをや
らない、もしくはPersonがnameを内部で勝手にfreezeをした場合、時間的・場
所的に遠く離れた場所で誰かがsub!をしてしまったらそのデバッグはかなりコ
ストがかかることになります(製品が出荷されちゃったあととかね)。

ですから、

安井さん:
>自分もfreeze案を出しましたが、いくらなんでもこれはやり過ぎな気が。せめて
>warningくらいで、ってそれも中途半端か。

やりすぎじゃないと思います。むしろ内部で勝手にfreezeするより親切設計じゃ
ないでしょうか。

石橋さん:
>そもそも「dup論議」は、RubyのStringの特殊性に起因するようです。
>  「Stringの変更権問題」を解決して、String#dupを使わない
>というのが結論ではないでしょうか?

 賛成です。私もいつまでも逃避してるわけにいかないのでこのへんで……。

 あ、でもConstantStringは「書き換えた時に初めて例外が出る」ので、上に
あげたような理由であまり親切じゃないと(私は)思います。

--
□Don't □ただただし@神奈川県相模原市
□Think,□こま犬: http://www.bekkoame.ne.jp/~sho/komainu/
□Buuuy.□SUPER Cub: http://www.bekkoame.ne.jp/~sho/cub/

In This Thread