青山です。 バイブルの目次(本文もですが)を見ると、「Find モジュール」「ftplib」 「pstore.rb」等、ライブラリの呼び方がバラバラです。 これは、外部ライブラリ、すなわち、require の対象が *.so なども許容して いる事なども影響しているのではないでしょうか。つまり、外部ライブラリの 共通した呼び方が無い事に起因する問題のように思われます。 たまたま上記の範囲に関しては find.rb, ftplib.rb, pstore.rb とすれば統 一できますが、socket などはなんとかしたい所です。文章中に socket と出 て来ても、機能なのか、ライブラリなのかわかりません。 かといって、socket.so と書くのはこれが拡張ライブラリであると知っていな ければ書けませんし、一々「socket ライブラリ」と書くのは面倒です。特に 関連ライブラリの一覧などを書くときにはとても不便です。 ・telnet.rb (socket, delegate, thread, timeout) ・telnet.rb (socket ライブラリ, delegate ライブラリ, thread ライブラリ, timeout ライブラリ) ・telnet.rb (socket.so, delegate.rb, thread.rb, timeout.rb) どの書き方もいまいちですよね。そこで、若干の効率のダウンはあるものの、 *.so も *.rb を用意するという方針はどうでしょうか。Perl がこの方針を取っ ていて、モジュール名は *.pm で統一されています。 これにより、ユーザー間の会話、ドキュメントの記述などに統一感があり、ま た、利用者がドキュメントを探す場合にも、i386-linux 等の動的なディレク トリを意識する事なくライブラリを探す事ができるうえ、ライブラリの作者も そこにドキュメントを書けば良いわけで、置場に困りません。 という事で、拡張ライブラリを直接呼び出すメリット以上に有効な面が多いと 思いますし、文法の変更も不要。いかがでしょうか。まとめますと、 ・拡張ライブラリは同名の *.rb を用意する。 あ、これだけですね。まとめる程も無かった。 -- 青山 和光 Wakou Aoyama <wakou / fsinet.or.j