Time Library Organisation

Ashley Yakeley ashley at semantic.org
Wed Jan 26 03:43:04 EST 2005

This is one way the time libraries might be organised. I think the 
functionality splits cleanly into two separate modules.

"Time" module (System.Time? System.DateTime.Time?)

  * TAI/UTC arithmetic and conversions, leap-second tables

  * possibly UT1 types and conversions, Julian days and dates

  * getting the current time

"Date" module (System.Date? System.DateTime.Date?) importing Time module

  * time zones

  * getting the locale time zone

  * converting times to "calendrical" format,
    Gregorian and possibly also Julian

  * calendrical arithmetic
    e.g. one month after March 31st

  * possibly "incomplete dates"
    e.g. "May 1" for all years

  * parsing and showing dates and times

Left for other libraries (standard or user)

  * sunrise/sunset, moon phase, solstices & equinoxes, etc.

  * figuring out time zone from position on Earth

  * civil summertime zone adjustment calculation

  * calendar systems other than Gregorian and Julian

  * generalised sets over time
    e.g. "2pm-4pm every 4th Saturday of the month"

Ashley Yakeley, Seattle WA

More information about the Libraries mailing list