Live data from Hacker News

Let's stop counting centuries

dynomight.net

211–220 of 449 posts

Re: Let's stop counting centuries

#211
post #65

Earlier quoted context omitted.

No, the first century began Jan 1, 0000. Whether that year actually existed or not is irrelevant - we shouldn't change our counting system in the years 100, 200 etc.

The calendar goes from 1 BC to 1 AD, there is no year 0.

Hence why the parent wrote "Whether that year actually existed or not is irrelevant".

They might or might not have a point, but they already addressed yours.

Re: Let's stop counting centuries

#212

Earlier quoted context omitted.

Logic is in short supply and off-by-one errors are everywhere. Most people don't care. I think it's more doable to learn to just live with that than to reprogram mankind.

That's what most people think and the world keeps trucking along. It's the rare people that don't who actually change the world.

You can change the world if you make it easier to meet a need enough people have. Persuading everyone they're holding it wrong is not that.

Re: Let's stop counting centuries

#213
post #75

Earlier quoted context omitted.

As I said twice, whether that date actually existed or not is irrelevant.

> whether that date actually existed or not is irrelevant. No, it isn't, since you explicitly said to start the first century on the date that doesn't exist. What does that even mean?

[deleted]

Re: Let's stop counting centuries

#214
Pick your battles. Is this easier or harder to win on than de-gendering romance languages?

How about Americans stop with dropping the "and" in nineteen hundred AND twenty?

Re: Let's stop counting centuries

#216
post #177

Earlier quoted context omitted.

In the USA we say “the aughts”

Speak for yourself. I refuse to use that abominable construct!

I'd agree to the extent that it sounds kind of twee and affected, but what would you use in its place?

Re: Let's stop counting centuries

#217
post #29

Earlier quoted context omitted.

There are numerous common concise ways to write the 18th century, at the risk of needing the right context to be understood, including “C18th”, “18c.”, or even “XVIII” by itself.

These are even more impractical, so I wonder what your point is? I can come up with an even shorter way to say 18th century, by using base26 for example, so let's denote it as "cR". What has been gained?

[deleted]

Re: Let's stop counting centuries

#218

It's easy, we should have simply started counting centuries from zero. Centuries should be zero-indexed, then everything works. We do the same with people's ages. For the entire initial year of your life you were zero years old. Likewise, from years 0-99, zero centuries had passed so we should call it the zeroth century! At least this is how I justify to my students that zero-indexing makes sense. Everyone's fought t…

> We do the same with people's ages. For the entire initial year of your life you were zero years old.

This wasn't the case in South Korea until recently:

https://www.aljazeera.com/news/2023/6/28/why-are-south-korea...

Re: Let's stop counting centuries

#219

Earlier quoted context omitted.

I don't think it is a mistake for Lua. The convention to zero-index arrays is not sacrosanct, it's just the way older languages did it (due to implementation details) and thus how people continue to do it. But it's very counter-intuitive, and I think it's fair game for new languages to challenge assumptions that we hold because we're used to past languages.

It's not counter-intuitive at all, it only seems that way because people are now used to languages with zero-based indexing. That's almost entirely because of the C language, which used pointer offset arithmetic with its arrays. Outside of that machine context, where an array is a contiguous block of RAM that can be indexed with memory pointers, there's no particular reason to do offset indexing. 1-based works just f…

> 1-based works just fine

It really doesn't. You can make it work obviously but you end up with much less elegant code, with +1 and -1 all over the place. E.g. for accessing a row of a matrix you get [width(i-1)+1, widthi+1) instead of the far saner [widthi, (width+1)i)

Generic code also becomes much more awkward.

Re: Let's stop counting centuries

#220

Earlier quoted context omitted.

I feel like the Romans had an excuse for that mistake. Not sure about Lua.

I don't think it is a mistake for Lua. The convention to zero-index arrays is not sacrosanct, it's just the way older languages did it (due to implementation details) and thus how people continue to do it. But it's very counter-intuitive, and I think it's fair game for new languages to challenge assumptions that we hold because we're used to past languages.

It's not sacrosanct but by the time Lua was created it was very clearly the right choice.
Post reply on HN