青山です。

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>