まつもと ゆきひろです

In message "[ruby-list:18588] [REQ] [].grep(pat){} ==> [].grep(pat).collect{}"
    on 99/11/15, Kazunori NISHI <kazunori / swlab.csce.kyushu-u.ac.jp> writes:
|From: gotoken / math.sci.hokudai.ac.jp (GOTO Kentaro)
|> はary.grep(...){|str| .... } と書けますよね。あ、返す値が違
|> うか(grep はブロックを与えられるとレシーバを返す)。
|
|これに関してですが、ブロックが与えられた場合は、「ブロックを評価した値
|の配列」を返してくれる方が嬉しい、と常々感じていました。(grep + collect
|的な機能を意図)

grepがブロック付きで呼ばれた場合のブロックの値はあくまでも真
偽値であり、それが真であった場合の値を集めると言う発想はあり
ませんでした。

ブロック付きgrepの戻り値を使っている人はいないと言う点には私
も賛同しますが、真偽値の真にそれ以上の意味を与えても良いのか
とか、意味のある値として偽を返したいときがあったりしないのか
とかが気にならないでもないです。

どう思います?