From: Shin'ya Adzumi Date: 2002-06-14T22:01:38+09:00 Subject: [ruby-dev:17443] Re: return value from methods of Array's subclass あづみです。 Yukihiro Matsumoto wrote: > selectやrejectの戻り値は「Arrayの要素をまとめたもの」であっ > て、主眼は要素です。外側のArrayはまとめるための容器であって > 元のオブジェクトとは関係がありません。 > あ、rejectは違いますね。selectやcollectは、です。 なるほど。 …と、昔に ruby-list で Array#map と Array#collect が不揃いなのは 仕様ですかという話をしてたのを思い出しました。この時に Array を 返すようになったんですね。 # というかこの辺で検索してると面白いのがボロボロひっかかる… この仕様自体には理解できるので、これとは別のアプローチを考えまし た。思い切って互換性は考えてません。 * Array#collect は Array を返す * Array#collect! は無くす * Array#map は元のオブジェクトを返す * Array#map! は元のオブジェクトを置き換える * Array#choice は Array を返す * Array#select は元のオブジェクトを返す * Array#select! は元のオブジェクトを置き換える 安積伸弥 adzumi@denpa.org