まつもと ゆきひろです

In message "[ruby-dev:8835] Re: [REQ] Array#each{|a,b,...|}, Array#shift/pop(num)"
    on 00/01/05, Akinori MUSHA aka knu <knu / idaemons.org> writes:

|A案)ちょっと保守的な案

|	def delete_range(range)	# 特に何も返さない。
|	def delete_at(i)	# 現状のまま。削除した要素を返す。
|	def delete_from(i, len)	# 特に何も返さない。

この案の欠点は [] なら引数パターンで指定できるものが、いちい
ち名前を変えないといけない点ですね。悪いことばかりでもないん
でしょうが。

|B案)ちょっと革新的な案
|
|	delete(e)		eに一致する最初のものを削除
|	delete!(i)		i番目を削除

この案の問題は delete と delete! で引数の意味が違う点ですね。
これは私にとって大きな大問題です。

| 私としては、B案を第一希望、A案を第二希望としたいです。

「引数の意味」の点でB案は採用できません。A案はうーん、ちょっ
と悩むところですね。

C案) slice/slice!を導入。delete_atは現状のまま
D案) slice/slice!を導入。delete_atはslice!と同じ
E案) slice/slice!を導入。delete_atは近い将来無くす

の方が受け入れやすいですね。
                                まつもと ゆきひろ /:|)