1) What is the reasoning behind 6 digit years? Surely any system contrived today will not exist in the year 100,000.
2) ISO 8601 is prolific. Is RFC 3339 well used/adopted in any system?
1) What is the reasoning behind 6 digit years? Surely any system contrived today will not exist in the year 100,000.
2) ISO 8601 is prolific. Is RFC 3339 well used/adopted in any system?
90% of the time when a library says ISO 8601 it doesn't actually implement the more esoteric parts of ISO 8601.
Whether time is used for a private application or for a standard, the important part is the agreement on what information is being conveyed and in what format. Receiving just the week of the year when you were expecting a time range is not useful.
Likewise, having some sort of official support for "20" as identifying the century (say via a Century type) is a lot of code to carry around and maintain - especially before there's a business need to represent centuries. You tend to need full date time instants, then maybe dates and times independently, then maybe durations - with only a few applications tending to need things like ranges.
Yeah, this means that when you want to use ranges and choose ISO 8601 as your format, you may not find readily-available, off-the-shelf parsers.
Admittedly I've not worked with Golang or Rust, and my Python has been limited to scripting more than developing.
But ... I want someone to put together a simulator that can estimate where Voyager 2 will be at e.g. 020000-01-01
It was a long time ago but I have memories of Apple's Objective C frameworks not supporting huge swaths of it. And it's worse for private systems that can just tell the clients to keep it inside the generic formats.
In that sense, ISO 8601 or RFC 3339 are virtually the same for many systems/companies.
Given that electronic computing has only existed since approximately the 1930s, it's probably premature to worry about what will happen 8,000 years from now.
Part 2 of the standard gives examples of years with 10 digits.
ISO 8601 was first published in 1988. RFC 3339, while ostensibly dated July 2002, codifies practices that date back to Usenet and e-mail (RFC 822: August 1982), and perhaps to the date utility (which existed in Version 1 AT&T UNIX).
I don't know about you, but I think RFC 3339 dates are much more appealing :)