青山です。 On Sat, Jun 01, 2002 at 07:42:33AM +0900, Yukihiro Matsumoto wrote: > |IO#size 無い、File#size 有る、Tempfile#size 有る、StringIO#size 有る。 > |IO#stat 有る、File#stat 有る、Tempfile#stat 有る、StringIO#stat 無い。 > > えーと、「自然」は「自明」とか「普通」と同じくらい主観的な単 > 語ですので、なぜ「自然」なのかもうちょっと説明してください。 > > 私は、Fileにだけあるメソッドが増えるとIOとしての多態性を減ら > すというデメリットを考えています。Tempfileは元から独自のメソッ > ドを追加しているので抵抗が少ないです。 File だけにある、ではなく、Tempfile も File なのでは、という感じです。 また、File#atime, File#ctime, File#mtime などはあるわけですし、File に とっては、size というのは、それら時刻情報と比較しても決してひけをとら ない情報なので、File#stat.size という扱いではなく、File#size であって も良いのではないかと。 File#atime 等も、File#stat.atime ではない独自の情報ではなく、単なる別 名ですから、利便性の為に用意されたのだと思われるので、同様の理由で、 File#size も自然だろう、と。 そのような感じで、#size は、Tempfile 独自ではなく、File にもあるのが良 いと思いました。 -- 青山 和光 Wakou Aoyama <wakou / ruby-lang.org>