I have just released version 0.00_01 of DateTime::TimeZone::TAI to CPAN.

This module implements International Atomic Time (TAI) as a timezone.
TAI is a time scale similar to UTC ("Greenwich time"), but without the
leap seconds.

Couple of remarks:

 - Thank you Dave, for fixing those bugs in DateTime. The remaining TODO
   bug means that the output of my TAI module is occasionally wrong; but
   now no more than by 1 second, and only rarely (namely, only during
   each leap second).

 - The name I've chosen ("DT::TZ::TAI") has some problems:
   DateTime::TimeZone does not recognize it, as it has a one-part name
   "TAI". If this is to work:

        $dt = DateTime->now( timezone => "TAI" );

   instead of

        $dt = DateTime->now( timezone => DateTime::TimeZone::TAI->new() );

   either DT::TimeZone has to be changed, or my module has to be
   renamed. What would a proper name be? "DT::TZ::TimeScale::TAI"
   perhaps? This would leave room for other time scales, such as
   "TimeScale::GPS".

 - The time interval between two leap seconds is growing; there has not
   been one since 1998. This is because the earth's rotation is
   (temporarily) acccelerating. Looking at the day length graphs at
   http://www.ucolick.org/~sla/leapsecs/dutc.html, the average day may
   well be shorter than 86,400 seconds before 2010, and negative leap
   seconds may be required. DateTime hasn't been tested for that, so I'm
   sure there are still lots of leap-second related bugs to find...

   So, Dave, your comment that "someday, the pain will stop" may be a
   bit premature.

Eugene

Reply via email to