Boost logo

Boost :

Subject: [boost] gregorian::date limited to years 1400 - 9999
From: Viacheslav Usov (via.usov_at_[hidden])
Date: 2016-12-22 08:58:57


Conceptual question: why is the Gregorian calendar's time range limited to
years 1400 - 9999?

If this or any of the below has already discussed in some public forum
(which I have failed to found, gmane's rebuild being possibly the culprit),
kindly point me it to it.

I am specifically interested in 1400. It seems completely arbitrary to me.
It predates the time the calendar was introduced by almost two centuries,
so that cannot be the reason why it cannot support earlier times.

ISO 8601 allows the entire 0 - 9999 range, even though dates earlier
than 1582-10-15 are subject to an agreement among the parties involved.
Extending the proleptic Gregorian calendar all the way back to year 0 seems
like one of the very few things that make sense.

So my question is, is there any technical problem in supporting the entire
0 - 9999 range?

If not, then my next question would be, what else would speak against
supporting the 0 - 9999 range?

If you expect some compatibility could be broken by that, then perhaps the
low end could become a template parameter with the default at 1400?

Cheers,
V.


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk