ふなばです。

>>> Sat, 30 Jan 1999 00:55:39 +0900 の刻に 「matz」、すなわち
>>> matz / netlab.co.jp(Yukihiro Matsumoto) 氏曰く

matz> 暦のスペシャリスト,ふなばさんの提案でこうなってます.99が西
matz> 暦99年か,あるいは1999年かの意味はparsedateの外側で決めてねっ
matz> てことで.

スペシャリストぢゃないけど :-)

安易に解釈をいれちゃうと、ややこしいと思ったんですよね。あきらかに適用
範囲を限定してしまうことにもなりますし。出所が time (2あるいは 3) のよ
うなものは勝手に解釈しちゃってよさそうだし、実際、そういうのは多いので、
そういうものだって割りきってしまうこともできたとは思います。

module ParseDate

  def parsedate2(date)
    year, *rest = parsedate(date)
    if year < 100
      if year >= 69
	year += 1900
      else
	year += 2000
      end
    end
    return year, *rest
  end

  module_function :parsedate2

end

ってなコードがあればいいと思うんですけど、あらかじめ用意しておいたほう
がいいのかしら。

ふなば ただよし