
In article
Are you seriously saying that you never have use for a Date without a Time? On what date were you born?
There's something to be said for representing date and time of day separately in calendar time, something like this: data CalendarDate = CalendarDate { cdYear :: Int, cdMonth :: Int, cdDay :: Int } data TimeOfDay = TimeOfDay { todHour :: Int, todMin :: Int, todSec :: Int, todPicosec :: Integer -- or nanosec } data CalendarTime = CalendarTime { ctDate :: CalendarDate, ctTime :: TimeOfDay } getDateGregorian :: JulianDay -> CalendarDate -- much less useful, but easy to write getDateJulian :: JulianDay -> CalendarDate I can see a number of applications for calendar dates by themselves and perhaps times of day also. This also might be more internationalisation-friendly, as users can create their own calendar types and still use TimeOfDay. On the other hand, it adds two levels of construction to CalendarTime. -- Ashley Yakeley, Seattle WA