This and other RFCs are available on the web at http://dev.perl.org/rfc/ =head1 TITLE Maintain internal time in Modified Julian (not epoch) =head1 VERSION Maintainer: Nathan Wiger <[EMAIL PROTECTED]> Date: 14 Aug 2000 Version: 1 Mailing List: [EMAIL PROTECTED] Number: 99 Status: Developing =head1 ABSTRACT Currently, internal time in Perl is maintained via C<time>, in seconds since the UNIX epoch (01 Jan 1970 UTC). However, this is a very ancient approach and quite UNIX-centric. Perl 6 should maintain its internal clock source as the Modified Julian Date. =head1 DESCRIPTION The Modified Julian Date is a system-independent, universally recognized time source. It has several key advantages builtin, including: 1. The ability to do date arithmetic with simple math ops 2. It can be used to easily derive many other sources, including UTC and local time 3. It is platform and even computer-independent This RFC proposes several key changes to Perl 6's internal time- keeping: 1. Maintain time internally via Modified Julian Date (MJD) 2. Replace C<time> with C<mjdate>, which will return MJD 3. Make all core time and date functions based off MJD =head1 IMPLEMENTATION The C<time> core function should be moved to an external module, such as C<Time::Local> or C<Unix::Time>. A core C<mjdate> function should be added, which returns the Modified Julian Date. Its name was chosen to make it consistent with the new C<date> and C<utcdate> functions described in RFC 48. =head1 REFERENCES RFC 48: Replace localtime() and gmtime() with date() and utcdate() Tim Jenness and Buddha Buck for their great links: http://www.jach.hawaii.edu/JACpublic/stardocs/sun67.htx/node217.html http://tycho.usno.navy.mil/systime.html http://tycho.usno.navy.mil/mjd.html
