You've missed all the GUI code to let the user pick out his time zone and the table of all of them, including the screwy half-hour ones and those that don't do daylight savings. You've also missed the possibility that leap seconds occur on other dates. There are some countries that do them at other times as well, even when they're assigned to midnight Dec. 31, in order to avoid disrupting midday commerce. This is usually done on an ad hoc basis, i.e. "on this occasion, by royal decree..." and so customers would like the full GUI for them to specify not only the pre-setting of the leap-second, but also the time and date of it. With all of this, it's easy for the leap-second/time-zone/daylight savings code to grow to be larger than than the code that runs the clock itself.

Most importantly, as I said before is the need to TEST and VERIFY all possible combinations. If you miss one, that's the customer who'll complain and you'll have to update the firmware in everyone's clocks and TEST and VERIFY it all again.

As for concern that people in 10,000 years won't conform to having the sun come up 15 minutes earlier, I'd say y'all are underestimating the power of adaptive evolution.

-RL

------------------------------------------------------------
Robert Lutwak, Senior Scientist
Symmetricom - Technology Realization Center
34 Tozer Rd.
Beverly, MA 01915
(978) 232-1461   Voice           [EMAIL PROTECTED]   (Business)
(978) 927-4099   FAX             [EMAIL PROTECTED]  (Personal)
(339) 927-7896   Mobile
----- Original Message ----- From: "Bill Hawkins" <[EMAIL PROTECTED]> To: "Discussion of precise time and frequency measurement" <[email protected]>
Sent: Saturday, July 16, 2005 6:12 PM
Subject: RE: [time-nuts] Re: UTC - A Cautionary Tale


Um, would you care to point out the more serious bugs?

Bill


-----Original Message-----
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]
Sent: Saturday, July 16, 2005 3:47 PM
To: [EMAIL PROTECTED]; Discussion of precise time and frequency measurement
Subject: Re: [time-nuts] Re: UTC - A Cautionary Tale


In message <[EMAIL PROTECTED]>, "Bill
Hawk
ins" writes:

Garbage is in the eye of the beholder.

Indeed.

That your "I'm gonna show those morons!!!" example contains serious
bugs in the leap second handling makes this one of my most treasured
emails in this entire debate.

Welcome to category 3) Bill, now please don't waste more time.

Poul-Henning


/* Main Time Routine */

/* User must set a Leap Second switch when notified of same. */
/* Use a signed number for the switch if you think it will  */
/* jump ahead one second. */

/* Handle one second interrupt */
UTC += 1;

/* Handle Local Time from user-entered parameters, just like MS does */
Local Time = UTC + Local Time Offset;

/* Handle leap second in UTC and local. Clock doesn't do 60 */
If Leap Second switch is set {
  If (UTC is 30 Jun 23:59:59 || UTC is 31 Dec 23:59:59) {
     Subtract leap second from UTC;
     Subtract Leap second from Local Time;
     Turn off leap second switch;
  }
}
/* Handle time shifts from user-entered parameters */
If Local Time matches Spring Ahead {
  Local Time += Spring Ahead Increment;
  Add one year to Spring Ahead;
}
If Local Time matches Fall Back {
  Local Time -= Spring Ahead Increment;
  Add one year to Fall Back;
  }

/* End main time routine */

--
Poul-Henning Kamp       | UNIX since Zilog Zeus 3.20
[EMAIL PROTECTED]         | TCP/IP since RFC 956
FreeBSD committer       | BSD since 4.3-tahoe
Never attribute to malice what can adequately be explained by incompetence.


_______________________________________________
time-nuts mailing list
[email protected]
https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts



_______________________________________________
time-nuts mailing list
[email protected]
https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts

Reply via email to