[#8257] Re: Smalltalk [Re: design patterns] — 助田 雅紀 <masaki.suketa@...>

助田です。

11 messages 1998/06/09
[#8259] Re: Smalltalk [Re: design patterns] — KIMURA Koichi <kkimura@...> 1998/06/10

[#8262] TkGrid do not exist? — Hiramatu Yoshifumi <hiramatu@...>

平松です。

26 messages 1998/06/10
[#8266] Re: TkGrid do not exist? — matz@... (Yukihiro Matsumoto) 1998/06/10

まつもと ゆきひろです

[#8269] Re: TkGrid do not exist? — NAGAI Hidetoshi <nagai@...> 1998/06/10

永井@知能.九工大です.

[#8271] Re: TkGrid do not exist? — NAGAI Hidetoshi <nagai@...> 1998/06/10

永井@知能.九工大です.

[#8375] new MethodIndex — keiju@... (Keiju ISHITSUKA)

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

21 messages 1998/06/16
[#8447] new MethodIndex — TEI meiki <tei@...> 1998/06/20

こんにちは、鄭です。

[#8448] new MethodIndex — TEI meiki <tei@...> 1998/06/20

再び、鄭です。_o_

[#8418] how to use delegate — gotoken@... (GOTO Kentaro)

ごとけんです

18 messages 1998/06/18
[#8419] Re: how to use delegate — matz@... (Yukihiro Matsumoto) 1998/06/19

まつもと ゆきひろです

[#8420] Re: how to use delegate — gotoken@... (GOTO Kentaro) 1998/06/19

ごとけんです

[#8421] Re: how to use delegate — matz@... (Yukihiro Matsumoto) 1998/06/19

まつもと ゆきひろです

[#8521] hash sort — "Kazuhiro Yoshida" <s95l980@...>

もりきゅうです。

34 messages 1998/06/26
[#8523] hash sort — gotoken@... (GOTO Kentaro) 1998/06/26

ごとけんです

[#8533] Re: hash sort — WATANABE Hirofumi <watanabe@...> 1998/06/26

わたなべです.

[#8534] Re: hash sort — gotoken@... (GOTO Kentaro) 1998/06/26

ごとけんです

[#8536] Re: hash sort — Sinichiro Dezawa <dezawa@...> 1998/06/26

出沢です

[#8538] Re: hash sort — gotoken@... (GOTO Kentaro) 1998/06/26

ごとけんです

[#8539] Re: hash sort — TAKAHASHI Masayoshi <maki@...> 1998/06/26

高橋です。

[#8541] Re: hash sort — gotoken@... (GOTO Kentaro) 1998/06/26

ごとけんです

[#8546] Re: hash sort — Tadayoshi Funaba <tadf@...> 1998/06/26

ふなばです。

[ruby-list:8578] Re: hash sort

From: gotoken@... (GOTO Kentaro)
Date: 1998-06-28 22:51:34 UTC
List: ruby-list #8578
ごとけんです

In message "[ruby-list:8573] Re: hash sort"
    on 98/06/29, Tadayoshi Funaba <tadf@kt.rim.or.jp> writes:

>ふなばです。

>>てゆーか、array.c をみたけど Array#<=> の実装自体が
>>まさに nonzero? 相当のことをやってるわけだし。
>
>うーん、そうだといいたいですが、ここで nonzero? は or と結びつかないと
>存在意義がないようなもので、ループをつかうなら nonzero? はいらないので
>す。e0.nonzero? or e1.nonzeoro? or ...  と並べるときに意味がある。しか
>も、数個程度ならいいけど、それ以上は現実的でない。書きづらいし、読みづ
>らいし、遅いです。

えっと、反論ではないですがープで評価の打ち切りって
結構めんどいと思います。 return は使えないし。

>自分でいってしまいますが、Array#<=> で懸念されるのは、 or による評価の
>打ち切りがないので、無用な評価があるかもしれないということじゃないでしょ
>うか (もちろん、 比較の打ち切りはある)。重いメソッド呼びだしなどがあっ
>たらどうなのか。

そうですね、これが sort のブロックで or でつなぐ
最大の理由ですね。だからといって nonzero_or 
みたいな構文を導入するのも変です。

すでに僕は sort ブロックにおける nonzero? or が
比較の意味がボカすとも思わなくなってしまったし、
動的な比較の慣用句としては見やすいと思います。

結局
「nonzero? or より Array#<=> が本質的に劣ることがあるか」
の問いには答えられませんが、
「nonzero? or は Array#<=> で対処しにくい場合への解決策の
一つになり得る。とくに評価の打ち切りには有効である」
といったとこでしょうか。

-- gotoken

In This Thread