From: Kazuhiko Izawa Date: 1999-12-16T21:13:00+09:00 Subject: [ruby-list:19586] Re: String#shift? こんにちは。井澤です。 In <19991216165655M.izawa@erec.che.tohoku.ac.jp> Kazuhiko Izawa writes : > うーん、そうですか。自分としては。scanやindexを使いながらもやもやしてた > ことがshiftという名前で固まったので、これだ!とか思ったんですが ^^; やっぱり主観だけじゃ説得にならないので、ちょっと分析してみました。 * String#splitとの対応 こういうメソッドがほしいと思った原点に戻って考えてみると、結局最初は、 split & shiftが欲しいということにいきつくようです。しかし残りの部分にも (こそ?)用があるので、splitで全体が切り刻まれてしまっては嬉しくない、と。 こうしてsplitから考えてみると、現状のString#splitが文字単位でなく語単位 で刻むことと対応して、String#shiftも語単位でシフトするのが自然に思えます。 String#split.shift -> String#shift # 語単位 String#split(//).shift -> String#shift(//) # 文字単位 という組み合せでどうでしょう。自作のモジュールはそうなってませんが ^^;。 ではでは。以上説得でした。