On Fri, Feb 20, 2009 at 10:40:04AM -0600, Dave Rolsky wrote: > I don't care what epoch we standardize on, as long as it's consistent > across platforms.
Indeed, as long as it's well-typed we can actually pick whatever epoch we want and assume that proper platform-specific conversions can be automatically applied. And if that's not possible, we'll need to speak to the language designer. And I'd still argue that a 100-year language should use 2000 for its epoch. As should a 1000-year language... :) But leaving that aside, a properly written time algorithm doesn't have to know its epoch, given sufficient language support and a stable timebase (which POSIX time ain't as long as it ignores leapseconds). The other thing I'll be on the warpath about is any suggestion of making integer fractions of seconds any part of the normal time interface. Such interfaces are always going to be wrong somewhere eventually. Regardless of their declared type, normal Perl 6 times and durations should be calculated in Num or Rat, whatever the best approximation to the real continuum is. I am unlikely to look kindly on any kind of fixed-point solution for normal user times. (All this comes with the major caveat that experts and time mavins can of course use whatever formats they want for their particular application. I'm only talking about the default representation of time in Perl 6.) Basically, I want yottaseconds and yoctoyears calculated with the same datatype for normal time. No discontinuities allowed, though of course precision is going to be relative. That's construed as a feature. Larry