ずいぶんフォローが遅れてしまいました。

From: matz / netlab.co.jp (Yukihiro Matsumoto)
Subject: [ruby-list:8995] Re: file editing using Regular Expression
Date: Fri, 7 Aug 1998 14:59:17 +0900

> そーですねえ.ここでどうしようかと迷ったのことは白状しちゃい
> ますが,とはいえPerlの挙動にも一理あるような気もしないでもな
> いので(なんとなく一理もないような気もするんですが ^^;;;),ま
> あ逆らうこともないか,程度の理由で一緒にしちゃいました.

Perlでは「理」よりも「(便)利」が優先されてる気がしますから…

> |ところで、PerlでファイルハンドルARGVに対して「eof();」と書く事はrubyで
> |は$<に対してどう書くのでしょう。
> 
> おろっ.えーと,どう違うんでしたっけ? ごそごそ.

舌ったらずですみません。

> eof(ARGV)またはeofとeof()は違うんですね.知らなかったなあ.
> 
>         eof/eof(ARGV)   各ファイルのeof
>         eof()           仮想ファイル全体のeof
> 
> で,Rubyの方を調べると…対応する機能は…ないですね.
> # なぜ調べる必要がある,作者のくせに ^^;;;
> 
> 一応,getsでnilが返ってきたり,readlineでEOFErrorが例外が上
> がればeof()相当なんですが,独立してチェックするための関数は
> ないです.

> ま,告白すると必要性に気がついてなかったってことですね.すい
> ません.まあ,あんまり必要ないってのもあるでしょうが.

いいえ、単にちょっと気になっただけで、実は(今のところ)自分も「こうして
欲しい」という気持ちはないんです。

>							で,以
> 下のようにするのはいかがでしょう?
> 
>   Perl                  Ruby
>   eof/eof(ARGV)         $<.eof
>   eof()                 eof
> 
> いや,仮想ファイルに対するeofだってことを強調するなら逆かな
> あ.どっちが良いとおもいます?

> ちなみに現在のeofは$<.eofと同じ動作をします.

どっちにしても現状と非互換になってしまうという事ですね…

自分の第一案は「なにもしない」です。特にどうして欲しいと思っているわけ
でもないので。やるんだったら、仮想ファイル全体のeofが「eof」の方が「好
み」ですが...

うーん、本当は、こーいうファイル名のarrayから仮想的なファイルを作るし
くみ(クラス?)を作ったりするのが「真面目」なんでしょうね…

# 自分で作る根気もないのに言うだけですが.

> p.s.
> 11月のPerl Conferenceで,Rubyだけのためのセッションが開かれ
> そうです.私自身もマジかよって感じですが.^_^

みなさんも書いてますが、自分も是非行きたいですね。うまく暇とお金が工面
できると良いんですが。
--
			   稲葉 浩人 (inaba / st.rim.or.jp)