Bold of you to assume no one will come up with a replacement date library rather than just getting rid of JS.
It’s javascript. We’ll have gone through 275,760 new datetime libraries before then, it’ll be fine.
Partitioning by integer secobds is dumb.
Just assign 0 to the start of time, 1 to the end of time, and every point between is represented by a double precision floating point number.
For all those who believe time is infinite please apply a logistic transformation to your dates.
Um excuse me time actually already ended in 1991
No, that was the world that ended in 2012.
Fun fact: infinities can be different sizes, such that one infinity can be larger than another.
They’re still infinities, with no end. Just of different absolute sizes. Fun stuff to rabbithole down into if you want to melt your brain on a lazy afternoon.
My nephew refuses to talk to me because of this.
He said I smelled like farts, then I said he did times 10, he replied times a hundred, I pulled out the infinity card, then he replied with times infinity plus one, activating my trap card. I sat him down and for 90 minutes, starting with binary finger counting and Cantor’s diagonalisation argument, I rigorously walked him through infinities and Aleph numbers (only the first 2 in detail, I’m not a monster).
Now he knows the proper retort (not infinity plus one, use Aleph 1). Unfortunately now he’s not sure if numbers are “real” or not because I taught him that natural numbers are the cardinal numbers.
Even more fun: nobody can agree on how many there are (some people say none!), and mathematics is self-consistent regardless of if you assume certain ones definitely do or definitely don’t exist.
For all those who believe time is infinite please apply a logistic transformation to your dates.
In what unit? They’re not scale invariant.
Also in case you’re serious, I’m sure (by the pigeonhole principle) you’ll run out of exponents just about as fast as you would run out of integers.
You can derive the date by first taking the largest unit, checking if it makes sense, then moving to a smaller time unit iteratively until the date comes out right.
slides £20 across the table make it end tomorrow
reserve me tickets for the inevitable shit show that follows 🍿
Well y275.8k will certainly be interesting
They’ll work on a solution in the year 275,759
What people fail to see is that this is the largest date the API can store, not a magical cutoff date in the distant future.
You could create a date today and send it to the API, and it could potentially crash it, or create a buffer overrun.
The definition of the Date object explicitly states that any attempt to set the internal timestamp to a value outside of the maximum range must result in it being set to “NaN”. If there’s an implementation out there that doesn’t do that, then the issue is with that implementation, not the standard.
No programming language should last 200,000 years
there goes my plans to build a time machine in javascript