Live data from Hacker News

Dates That Don't Exist (2015)

blog.yossarian.net

71–80 of 90 posts

Re: Dates That Don't Exist (2015)

#71
post #41

Earlier quoted context omitted.

Who writes computer programs that deal with pre-1582 _dates_ at all? In science-related code, I can image a case for calculating things like seconds elapsed across a very long time period. But in that case you're not really dealing with dates. Instead, you want something like the Unix epoch, but probably with an earlier epoch start. There may be some very niche cases for pre-1582 dates in code that I'm not thinking o…

Astronomy

That's its own fun rabbit hole.

https://en.wikipedia.org/wiki/Epoch_(astronomy)

https://en.wikipedia.org/wiki/Barycentric_Coordinate_Time

Re: Dates That Don't Exist (2015)

#73
post #17

Ok now do date math, does the day-of-month accurately jump over the non-existent numbers?

This "civic vs proleptic" split is a good use case for composite calendars: glue a few calendars together at their historical cut-over dates and the result behaves like one ordinary calendar.

I maintain an Elixir library (Calendrical) that does this. England, for example, is just three segments spliced onto a Julian base:

  defmodule England do
    use Calendrical.Composite,
      calendars: [
        ~D[1155-03-25 Calendrical.Julian.March25],  # year starts on Lady Day
        ~D[1751-03-25 Calendrical.Julian.Jan1],     # New Year moved to Jan 1
        ~D[1752-09-14 Calendrical.Gregorian]        # the 11-day jump
      ],
      base_calendar: Calendrical.Julian
  end
The "missing" days simply aren't valid dates, and stepping across the boundary jumps:

  England.days_in_month(1752, 9)              #=> 19
  England.valid_date?(1752, 9, 3)             #=> false
  Date.shift(~D[1752-09-02 England], day: 1)  #=> ~D[1752-09-14 England]

Re: Dates That Don't Exist (2015)

#74
post #41

Earlier quoted context omitted.

Who else uses the proleptic Gregorian calendar other than programmers of datetime libraries?

Who writes computer programs that deal with pre-1582 _dates_ at all? In science-related code, I can image a case for calculating things like seconds elapsed across a very long time period. But in that case you're not really dealing with dates. Instead, you want something like the Unix epoch, but probably with an earlier epoch start. There may be some very niche cases for pre-1582 dates in code that I'm not thinking o…

Genealogical software, historical video games (CK2 has at least one mod which adds alternative calendars), I can imagine there are some needs for this in contract management software for countries with very old businesses and properties like England and Japan.

Re: Dates That Don't Exist (2015)

#75

There seems to be disagreement about the year. Two systems I checked assume 1752, not 1582. (OpenBSD) $ man cal [...] The Gregorian Reformation is assumed to have occurred in 1752 after the 2nd of September. By this time, most countries had recognized the Reformation (although a few did not recognize it until the early 1900s). Eleven days following that date were eliminated by the Reformation, so the calendar for tha…

It depends on the country. 1582 is Catholic Europe 1700 or 1701 is Protestant Europe 1752 is Great Britain and its colonies which include USA 1918 is Russia 1923 Greece https://en.wikipedia.org/wiki/Adoption_of_the_Gregorian_cale...

Which is one of the reasons that the Perl DateTime library just implements the proleptic Gregorian calendar (i.e. "let's just pretend we've always used Gregorian and the Julian calendar never existed")

Re: Dates That Don't Exist (2015)

#76
post #68

Earlier quoted context omitted.

The British (including the American colonies) also did an arguably even more confusing calendar change in 1752, by switching the start of the new year from March 25 to January 1.

Does that really mean that the day after 24 March 1750 was 25 March 1751?

Yeah, and why not? There's nothing special about January 1. It's kinda like the international date line: you have to choose somewhere. Although it does seem quite practical to have the year begin on the first day of a month.

Re: Dates That Don't Exist (2015)

#77
One of my favorite fun facts to share on icebreakers and such is that even though Russia switched to the Gregorian calendar in 1918, the Christmas day in Russia is still 1/7, because Russian Orthodox church has never switched from the Julian.

Also, there is an unofficial "Old New Year" eve on 1/13, which people recognize as the "old style" New Year eve, even though more than 100 years have passed since the calendar change.

Re: Dates That Don't Exist (2015)

#78

Earlier quoted context omitted.

Who else uses the proleptic Gregorian calendar other than programmers of datetime libraries?

It's typically not used in modern historical writing when referring to events located in areas that used the Julian calendar at that time. But it is typically used when referring to events located in areas with no calendar system familiar to modern readers, most notably the Maya calendar. Maya Long Count dates are typically converted to the proleptic Gregorian calendar. Also, many modern historical writings will disp…

> Also, many modern historical writings will display both Julian and Gregorian dates, particularly for dates around when the calendars were changing or when context is unclear (e.g. a historical figure who was born in an area with one calendar and died in an area with another calendar).

To follow up on this, George Washington is a great example. He was born about 20 years before the British calendar changed from Julian to Gregorian and changed the new year from beginning on March 25 to January 1.

The vast majority of modern sources will cite Washington's birthday as February 22, 1732, which is actually the proleptic Gregorian calendar (called "New Style"). George Washington himself would have said that his birthday was February 11, 1731, at least until the British calendar changed in 1752 (at which point he probably would have still used the "Old Style" since it would have been clear from context).

Re: Dates That Don't Exist (2015)

#79

Using the proleptic Gregorian calendar for historical dates is only a problem if you want to compute the day of the week (which those missing days will throw off prior to the adoption of the Gregorian calendar in the relevant country) or the number of days between two historical dates (if the two dates span the date when the Gregorian calendar was adopted). And, frankly, there are other problems to deal with beyond c…

As da_chicken pointed out, it's also a problem if you want to record a date like February 29, 1700, which is a perfectly valid date in the Julian calendar but simply doesn't exist in the proleptic Gregorian calendar.

Dates are messy.

Re: Dates That Don't Exist (2015)

#80
post #35
post #30

This article presents a grossly simplified version of events. The truth is that only some catholic countries switched in 1582. Britain and its colonies switched in 1752. Prussia switched in 1610. And so on.

Hadn't Britain established the C of E permanently by 1570, so it wasn't part of the Catholic world any more?

That might be. I am not a history experts. I just wanted to counter the notion that that one October 1582 was the singular special month where the switch happened. That was not the case and calendars stayed messy until the 20th century because of this.
Post reply on HN