From: <khaines / enigo.com> > > On Sat, 7 Oct 2006, David Vallner wrote: > >> Jim v. Tess wrote: >>> Is there a reason why Time.local can't handle dates beyond 2038? I know >>> that's when the number of second since 1970 exceeds 2^32, but can't a >>> big, strong language like Ruby handle it? >>> >> >> Because it uses the underlying platform's time manipulation functions? > > Yes. > >> Mebbe hack around the issue by providing Ruby replacements for large >> timestamps? Then again, maybe that's what the Date / DateTime classes >> do. Buggered if I know, I could never remember which one did what. > > Yes. DateTime uses Rational to represent time. 1 represents a day, not a > second. It can be used with arbitrary dates well outside the range of > Time, but it is MUCH slower. Use Time everywhere one can. DateTime sounds nice. As cool as ruby's automatic Fixnum -> Bignum auto-conversions are, one imagines a date where even someone learning ruby might be able to specify "puts 2**256" (can already), or Date.years_ago( -13_700_000_000 ).to_s => "Big Bang" Is it not theoretically possible to make a "fixnum->bignum-like Date", where it would be fast until its precision was exceeded? Then morph into a badass DateTime that could handle dinosaurs, and big bangs, etc.? With Respect, Bill