あおきです。

  In mail "[ruby-ext:01596] Re: require 'dir/...'?"
    Shugo Maeda <shugo / ruby-lang.org> wrote:

> 前田です。

> > たとえば実例としては TMail

> > これらはすべてそろわないと役に立たず、別々には普通使いません。
> 
> この場合、ユーザが直接使いたいのはTMail::Mailだと思うので、
> tmail.rbをmail.rbにして、
> 
> require "tmail/mail"

ちょっと待ってください。それは違う話です。たとえ現在の tmail.rb を
mail.rb に改名したとして、それをユーザが直接指定して TMail::Mail だけ
使うのは別に構いません。しかしぼくは TMail:: にあるものは全部一括
して提供したいんです。具体的にはバラバラだと

  require 'tmail/mail'
  require 'tmail/loader'

となりますが、これを require 一個で提供したいんです。そういう場合
高橋さんのおっしゃる例だと(トップの) tmail.rb を作るわけですが、
そこに至る道筋がおかしいだろうって言ってるんです。tmail.rb で
提供したいのは ::TMail じゃなくて ::TMail::* です。それを tmail.rb で
提供してしまうのは高橋さんの論理 (ディレクトリ構造とクラス構造が
対応するのがシンプルだよね) にてらしたらむしろ矛盾するでしょうと。
-------------------------------------------------------------------
青木峰郎