comp.lang.ada
 help / color / mirror / Atom feed
From: Martin@nezumi.demon.co.uk (Martin Tom Brown)
Subject: Re: Software Engineering News Brief
Date: 1996/11/19
Date: 1996-11-19T00:00:00+00:00	[thread overview]
Message-ID: <848393101snz@nezumi.demon.co.uk> (raw)
In-Reply-To: 56q5e3$ntv@gaia.ns.utk.edu


In article <56q5e3$ntv@gaia.ns.utk.edu> %%spam "Matt Kennel" writes:

> Robert Dewar (dewar@merv.cs.nyu.edu) wrote:

> : That sounds silly to me. This is a highly specialized requirement that
> : should be provided by auxiliary packages, not by the central package
> : for dealing with near by dates that is primarily intended for use in
> : control of time related processing (note that Calendar is still in the
> : tasking chapter, even in the new RM.
> 
> : Also, Gregorian dates are quite tricky, because the change over in the
> : calendar happened at different times in different parts of the world, so
> : you need detailed geo-political localization for such processing. Again,
> : much more suitable for some auxialiry package than for Calendar, which
> : does not even have time zone support.
> 
> Let's stop complaining about the problem and start thinking about its
> fundamentals correctly.   

Yes you are right. This thread seems to be a argument so far 
which confuses details of the input/output package for dates 
with the internal machine representation of the entity.

Remember that in some countries US style dates MM/DD/YYYY are not 
standard and so DD/MM/YYYY is used in the UK and YY'/MM/DD in Japan 
(YY' is YYYY-<year of succession of Emperor reigning in YYYY>)

> There are indeed universal and uniform notions of "date", for example,
> counting absolute days, defined perhaps as count of maximum solar altitude
> over some fixed longitude.

The history of the derivation of accurate time systems is too messy 
and off topic to deal with here. It is worth taking a look at the
Explanatory Suppliment to the Astronomical Ephemeris & Nautical Almanac.
There is a very throrough discussion of how the various civil and
astronomical Ephemeris time systems and SI definitions are linked.

The same is true for details of geographic adoption of calendars
(problems also exist in this area of knowing *where* historic
borders actually were located in some hotly disputed areas).

> This is a *solved* problem for astrophysical ephemerides.  

Indeed and the solution has existed for a very long time.

> Ok, we now have absolute days, counting in integers. 
> I believe this is called "Julian date". 

Yes - the "Julian Day Number" is defined on the integers,
and its extension "Julian Date" is defined on the reals to 
include fractions of a day to specify time of observation.

Note it was defined so that from Greenwich the JD would change at 
midday so astronomical observations on a single night get the same JD.
 
> Julian dates can be added and subtracted like natural integers.
> 
> Given this representation, the translation to MM/DD/YY is a 
> *transformation layer* (model vs. view) depending on location, 
> time, religion, nationality, et cetera. 
> 
> E.g. RussianAndSovietOrthodoxDateTranslator, WesternEuropeanDateTranslator,
>      FrenchRevolutionDateTranslator, RomanEmpireDateTranslator

I heartily agree, but then being a scientist and former astronomer
based in the UK I could be accused of Greenwich-o-centric bias here.

> I wonder if this also addresses the question of whether 
> "math or science" are useful for computer programmers. 

I think it is actually a beautiful example of the relevance 
of existing knowledge outside computing to software problems.

It is worth also noting here that in addition to the Y2K problem
in 1988 *and* 1992 leap year related faults occurred in various 
banking systems which caused chaos both on 29/2 and 31/12. 
It appears this leap year may be OK - so far so good anyway.

Regards,
-- 
Martin Brown  <martin@nezumi.demon.co.uk>     __                CIS: 71651,470
Scientific Software Consultancy             /^,,)__/





  parent reply	other threads:[~1996-11-19  0:00 UTC|newest]

Thread overview: 44+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
1996-11-05  0:00 Software Engineering News Brief tmoran
1996-11-05  0:00 ` jimgregg
1996-11-05  0:00 ` Robert Dewar
1996-11-07  0:00   ` Stefan.Landherr
1996-11-11  0:00     ` Robert Dewar
1996-11-06  0:00 ` Tom Reid
1996-11-07  0:00   ` Robert Dewar
1996-11-07  0:00   ` Norman H. Cohen
1996-11-08  0:00   ` Robert I. Eachus
1996-11-09  0:00     ` Paul Eggert
1996-11-11  0:00       ` Norman H. Cohen
1996-11-16  0:00       ` Robert Dewar
1996-11-17  0:00         ` Fergus Henderson
1996-11-17  0:00           ` Robert Dewar
1996-11-17  0:00             ` Larry J. Elmore
1996-11-17  0:00               ` Robert Dewar
1996-11-18  0:00                 ` Keith Thompson
1996-11-18  0:00               ` Larry Kilgallen
1996-11-18  0:00                 ` Robert Rodgers
1996-11-18  0:00               ` Norman H. Cohen
1996-11-19  0:00                 ` Frank Manning
1996-11-18  0:00             ` Mark A Biggar
1996-11-18  0:00             ` Dave Sparks
1996-11-24  0:00             ` Paul Eggert
1996-11-24  0:00               ` Robert Dewar
1996-11-25  0:00                 ` Paul Eggert
1996-11-18  0:00         ` Matt Kennel
1996-11-19  0:00           ` Keith Thompson
1996-11-19  0:00           ` Martin Tom Brown [this message]
1996-11-21  0:00   ` Robert I. Eachus
  -- strict thread matches above, loose matches on Subject: below --
1996-11-12  0:00 Marin David Condic, 561.796.8997, M/S 731-93
1996-11-09  0:00 tmoran
1996-11-09  0:00 ` Robert Dewar
     [not found] <55t882$9m@news2.delphi.com>
1996-11-07  0:00 ` Robert Dewar
1996-11-07  0:00 tmoran
1996-11-07  0:00 ` Robert Dewar
1996-11-01  0:00 Software Engineering News
1996-11-01  0:00 ` Adam Beneschan
1996-11-05  0:00 ` David Bradley
1996-11-05  0:00   ` Larry Kilgallen
1996-11-05  0:00     ` Steve Jones - JON
1996-11-06  0:00   ` Ed Falis
1996-11-06  0:00 ` John Cosby
     [not found] ` <55rmsc$2ee$1@shade.twinsun.com>
1996-11-07  0:00   ` caip.rutgers.edu!halasz
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox