From: GOTO Kentaro Date: 2002-05-10T15:53:39+09:00 Subject: [ruby-dev:17029] Re: 標準添付案 At Thu, 9 May 2002 02:57:58 +0900, Akinori MUSHA wrote: >  もし「開発時にしか使わず、最終製品には使われないもの」という > 意味であれば、ある程度線引きも明確で意味があるかもしれません。 いろいろ内省してみたところ開発というよりはRubyそのものを調べ る道具という意味あいを持ったディレクトリが欲しいのがもともと の欲求のようです。 > > 僕が名前空間を分けたいと思う一番の理由はやっぱり名前の衝突を > > 回避するためです。古くからあるものについてはその名前が知られ > > てるのでそれを避けることがユーザの間で習慣化されていると思い > > ますが、新しく追加されるものについては、新参の方が避けるのが > > 良いのではないかと考えます。 > >  私の考え方は少し違います。トップレベルは標準に予約されていると > 考える方が自然ではないでしょうか。一般的な名前は、 Ruby 本体や > 標準ライブラリにいつクラス名やライブラリ名として使われるか分から > ないわけです。 予約というのは「まだ使ってなくても」ユーザの利用を禁止すると いう意味に見えるので、トップレベルが予約というのはちょっと違 う気がします。気になるポイントは、新規にライブラリを導入する 場合に、後から予約が追加されるという点です。 別格というのならまぁ分かります。実際、 $: にカレントディレク トリが入っているので、$: をいじらない限りは、好むと好まざる とに関わらず標準のライブラリパスのトップレベルはカレントディ レクトリよりも優先されるわけですし。 > 定義の明確でないカテゴリは(あるいは明確なものさえ)、どうにも > 分類しかねるものが出てきます。カテゴリの論議に時間を取られる上、 > 新しいカテゴリを作るとなれば既存ライブラリの移動や再編を迫られ > ます。 ううむ。それはそのとおりですね。それに衝突の回避を厳密にやろ うすると武者さんが挙げたJava式が一番楽でしょう。好きではない けど。 一般的な分類の議論は僕には論点を明確にできないので、さておき、 少なくとも現状の which.rb をトップレベルにおくのが妥当とは思 えません。find(1) に類似した find.rb があるといったのもその 理由です。 そうすると which ではない名前にするのが妥当なのかなぁ。でも、 which という名前は捨て難いし。ううむ -- Gotoken