From: matz@... (Yukihiro Matsumoto) Date: 2004-01-31T18:54:21+09:00 Subject: [ruby-dev:22797] Re: avoid duplicate load/require in Win32 まつもと ゆきひろです In message "[ruby-dev:22795] Re: avoid duplicate load/require in Win32" on 04/01/31, take_tk writes: |次のような仕様を満たすべきかどうかの問題ではないでしょうか? | |---- |http://www.ruby-lang.org/ja/man-1.6/index.cgi?cmd=view;name=%C1%C8%A4%DF%B9%FE%A4%DF%B4%D8%BF%F4 |---- |require(feature) | |Ruby ライブラリ feature をロードパス $: 上 から探し、同じライブラリがま |だロードされていなかった時だけロードし ます。 |---- | |Win32のファイルシステムでは Foo.rb も foo.rb も同じファイル(同じライブ |ラリ)のはずです。 解釈の問題だと思います。 Ruby上で違うfeatureを指定しているのですから、ファイルシステ ムの問題でロード対象が結果的に同じファイルであっても検出する 必要があるかどうかは疑問です。これはたとえばUnix 上で English.rb と english.rb がシンボリックリンクであった場合、 片方をロードしたらもう片方のロードを避けるべきかと同じ問題だ と考えます(私は避けるべきだとは思わない)。 将来、$"の内容が++<拡張子>になったとしても、 これは「ファイルパスではなく、一種の正規化の結果だ」と強弁す るつもりです。 まつもと ゆきひろ /:|)