こんにちは。井澤です。

In <19991216165655M.izawa / erec.che.tohoku.ac.jp> 
Kazuhiko Izawa <izawa / erec.che.tohoku.ac.jp> writes :

> うーん、そうですか。自分としては。scanやindexを使いながらもやもやしてた
> ことがshiftという名前で固まったので、これだ!とか思ったんですが ^^;

やっぱり主観だけじゃ説得にならないので、ちょっと分析してみました。

* String#splitとの対応

こういうメソッドがほしいと思った原点に戻って考えてみると、結局最初は、
split & shiftが欲しいということにいきつくようです。しかし残りの部分にも
(こそ?)用があるので、splitで全体が切り刻まれてしまっては嬉しくない、と。

こうしてsplitから考えてみると、現状のString#splitが文字単位でなく語単位
で刻むことと対応して、String#shiftも語単位でシフトするのが自然に思えます。

	String#split.shift	-> String#shift		# 語単位
	String#split(//).shift	-> String#shift(//)	# 文字単位

という組み合せでどうでしょう。自作のモジュールはそうなってませんが ^^;。

ではでは。以上説得でした。