Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
Number systems of the world, sorted by complexity of counting (2006) (airnet.ne.jp)
271 points by ColinWright on March 22, 2018 | hide | past | favorite | 114 comments


A LOT of these have massive errors. I strongly recommend comparing all that to this paper:

https://pdfs.semanticscholar.org/5ca1/fa0ffca55e9003053de2f5... - Harald Hammarström - Rarities in Numeral Systems (2009)

And this page:

https://mpi-lingweb.shh.mpg.de/numeral/ "Numeral Systems of the World's Languages"

By the way: If anyone can find a digital copy of this paper from 1840 by Augustin-Louis Cauchy (yes, THAT Cauchy!):

https://scholar.google.com/scholar?cites=6877129426190119313...

I'd very much appreciate it.

Donald E. Knuth cites it in TAOCP while discussing Balanced Ternary:

"Cauchy pointed out that negative digits make it unneccesary for a person to memorize the multiplication table past 5x5." [Comptes Rendus Acad. Sci. 11 (Paris, 1840), 789-798]

But he doesn't elaborate on it further, and neither does anyone else from what I can tell, and I have yet to figure out the trick. (I currently try to teach myself to EFFICIENTLY do all my mental arithmetic in balanced ternary - not an easy task!)


>But he doesn't elaborate on it further, and neither does anyone else from what I can tell, and I have yet to figure out the trick

5 * 9 = 5 * (10 - 1) = 50 - 5 = 45

Specifically, you need to know everything in the 5x5 area, and how to multiply by 10.

More generally, any digit 6-9 can be rewritten as (10 - (10 - digit)) and then you can apply distribution rules to clean things up. Here's a three by two digit example:

247 * 68 =

    (10 - 3) * (10 - 2) +         // 7 * 8
    10 * (10 - 3) * (10 - 4) +    // 7 * 60
    10 * 4 * (10 - 2) +           // 40 * 8
    10 * 10 * 4 * (10 - 4) +      // 40 * 60
    10 * 10 * 2 * (10 - 2) +      // 200 * 8
    10 * 10 * 10 * 2 * (10 - 4)   // 200 * 60
evaluating we get

    100 - 50 + 6 +
    10 * (100 - 70 + 12) + 
    10 * (40 - 8) + 
    100 * (40 - 16) + 
    100 * (20 - 4) + 
    1000 * (20 - 8)
And then to finish up:

    00056 +
    00420 +
    00320 + 
    02400 +
    01600 +
    12000 =

16796, which is the correct answer.

Edit:

The fun thing to think about is conceptually why this works. If you consider numbers as just bits, all you're doing is converting the highest bit from base to sign, without actually changing it, doing the multiplications on the lower bits, and then tracking the sign to know whether or not to add or subtract later.

Or to put it another way, you're shifting your set of numbers from being +0 - +10 to being -5 - +5. This makes the lookup table smaller, but requires you to do some additional intermediate lookups (up to four, one in each "quadrant" of the 10x10 table) to be as powerful.

Fun to conceptualize that way.


I think this is one instance where using a larger look-up table (i.e. multiplication table up to 10x10) yields clear benefit. The technqiue using only 5x5 increases the number of intermediary results to keep in one's head.


Most everything is easier with negative digits. Easier addition, easier rounding, easier multiplication, much easier subtraction. The one part that needs slightly more distinct techniques vs. what you are used to is division, but it's still probably easier overall.

The grandparent poster's example only looks more complicated because we don't have standard glyphs for the negative digits.


Is this the best way to do quick arithmetic, or are there other ways?


There are lots of ways, depending on what you want to calculate.

Here's a fantastic book on the subject:

https://www.amazon.com/Dead-Reckoning-Calculating-Without-In...


Comptes rendus hebdomadaires des séances de l'Académie des Sciences

Tome XI, p.789 (16 novembre 1840)

Found in

Oeuvres complètes d'Augustin Cauchy

1ère série

Tome V

III. Notes et articles extraits des comptes rendus hebdomadaires des séances de l'Académie des Sciences. (Suite.)

105. Calculs numériques. sur les moyens d'éviter les erreurs dans les calculs numériques.

https://www.e-rara.ch/zut/content/pageview/5702727


Wow. I figured it'd sit online in some archive that I failed to find. Thanks a lot!

PDF of Tome V here:

https://www.e-rara.ch/download/pdf/5702285?name=Tome%2520V%4...


> A LOT of these have massive errors. I strongly recommend comparing all that to this paper

As you have already found those errors and done that comparison, could you share some of what you've found?

EDIT: For whatever it's worth, I checked French on https://mpi-lingweb.shh.mpg.de/numeral/, and it lists the same forms for 70 and 90 for French and Belgian French. Which is incorrect.


If you normalize your numbers to be written with digits from -5 to +5 instead of 0 to 9 in each place, then the multiplication table is more symmetrical so you can memorize a table 1/4 as big and then just remember the signs of each quadrant.


I don't understand how the author is judging complexity. The top one, Huli, is a base-15 number system but looks quite regular otherwise. French, on the other hand, switches from a base-10 to a base-20 at 80 and then switches things up at 97.

According to the listing, Welsh sits somewhere between these two but it has separate numbering systems for {20s, 40s, 60s, 80s}, {30s, 70s, 90s}, and {50s}. That seems much more complicated than either Huli or French.


Putting Japanese at such a low complexity shows a lot about the author's criteria and bias.

Japanese numerals are quite easy, but when it comes to actually counting things, it is quite complex. There are two series of numeral words that are used in different contexts, as well as dozens of counter words that pair with a variety of semantic categories. Many combinations or number + noun have quite irregular combinations, like "hatachi" (20 years of age) or "hatsuka" (20th day of the month).


Yeah, I was definitely thinking that Japanese counting is way more complex than Chinese counting.


Huli seems to change (though using a common root?) the words for the small numbers (like 1, 2, 3) when they get applied to how many 15s have been counted. "one fifteen" is "nguira ni", where does "ni" come from? "two fifteen" is "ngui ki", "ki" from "kira", why'd "nguira" abbreviated?

It's regular in construction, but the words change and drop parts of the basic number without a particular pattern (as an outsider to the language). "kira" -> "ki" makes sense. "duria" -> "dauni" -> "dau" kind of makes sense, but adds an extra letter (how does the sound actually change?). "tebira" -> "tebone" -> "tebo". A pattern is forming. Drop the "r-" and replace it with an "n-" (except for some) and later drop the "n-".


In french it's base ten only. AFAIK it's just the names, particularly in France, that are a bit confusing. I don't think francophones think of quatre-vingts as 20 20 20 20, but as 80. Just like english is not base-12 because its eleven and twelve, and not oneteen and twoteen.


Just the names doesn't account for 80 + 10, 80 + 11, ..., 80 + 19.


Isn't it like quatre-vingts and ten, eleven, etc?


97 is pronounced like "four-score-ten-seven".


Who is downvoting this, and why? Quatre-vingt-dix-sept is literally the French version of four-score-ten-seven.


but with notes:

- quatre-vingt is the name for 80 - dix-sept is the name for 17

so we could also say it's eighty-seventeen.


quatre-vingt, quatre-vingt-un, quatre-vingt-deux,...,quatre-vingt-dix, quatre-vingt-onze, quatre-vingt-douze,...quatre-vingt-dix-neuf, cent,...


Also, Swiss French, which has proper words for seventy and ninety, is considered more complex than French French, even though I'd consider having specific words simpler (especially given the complexity of 97 (which is said as 4 x 20 + 10 + 7)


Did you interpret the table backwards? Swiss French is considered simpler:

  1. (most complex)
  19. French
  33. Swiss French
  69. (simplest)


Yes, yes I did! Thanks, that makes a lot more sense!


67 isn't much better, either. It's 60 + 10 + 7.


Also, number triads ending in 1 or 11 smaller than 80 need an 'and' conjunction. And numbers ending in 1 need to concord in gender. What a mess.

Before the 1990s there were also all sort of over-complicated hyphen rules. Thank god it's now simpler; hyphens everywhere.


77?


Yes, 77, you're right. I can't edit the comment anymore :(

See what happens when you're used to a saner numbering system? I always hear "soixante ..." and my brain goes "6... something" :p


I think it’s implied that base-10 is lowest complexity (this page is for English speakers) and I think that is why base-15 is more “complex” than the weird French system which is mostly addition of base-10 primitives.


Huli appears regular, but a construction like "ngui ki, ngui tebone-gonaga tebira" to mean "fifteen twos and the three of the third fifteen" does seem like quite a mouthful for 33.


It's not "fifteen twos" but "two fifteens".

They're just counting how many fifteens they've got: "two complete fifteens, and 3 from the third fifteen"


Is the complexity based on pronunciation here?


Agreed. Hindi is ranked 4th most difficult but the system is identical to English (rank 41). Just the symbols for the digits are different. Even they are similar looking!


Hindi/Marathi are not easy, you almost have to memorize the numbers 1-100.

Hindi and Marathi both have dedicated names for the tens (11, 12, 13, ...) and after that numbers are named in the reverse order of their digits. E.g. 45 will be five - forty.

_except_ the word for five will be different from the word for five in, say, 75. Similarly, the word for "fifty" in the fifties is different for many of them.

There's a lot of variation which you basically don't realize if you speak these languages natively, the variation can't be boxed into "rules" to make it easy to learn, and the end result is that you just end up implicitly memorizing it.

It's hard to realize because you basically end up modeling this subconsciously as there being multiple ways to say "five" and multiple ways to say "seventy", so the numbers seem to be following a fixed scheme, but in reality you've learned which synonym to use where.

In fact when folks talk about french numbers being weird and complex, this is often the counterexample I give.

I suspect this complexity arose from having synonyms for numbers which eventually randomly settled down, and also from having sandhi (rules for melding words together) which got corrupted over time, leading to things like "tay/ees" vs "chau/bees"

The website probably should have used the "different form"/"different word" thing it did for English. But note that the site did consider "twelve" to be its own number, not 10 + 2, which is basically what's happening here too, just extended 1-100.


> Hindi and Marathi both have dedicated names for the tens (11, 12, 13, ...)

Same deal with English.

> and after that numbers are named in the reverse order of their digits. E.g. 45 will be five - forty.

Which is similar in complexity to English, just the order of speaking is reversed.

> _except_ the word for five will be different from the word for five in, say, 75. Similarly, the word for "fifty" in the fifties is different for many of them.

Now I realize what you're saying. It seems that I have memorized every number. Because I never thought of this.


> Same deal with English.

>

> Which is similar in complexity to English, just the order of speaking is reversed.

Yes, I was mentioning these to paint an accurate picture, not to contrast with English :)

-----

As a native Marathi / nonnative Hindi speaker, I can tell you that the Hindi numbers are pretty hard to get, and took me forever to get used to, even though the variations are almost the same as the ones Marathi has.

(However if you asked me about Marathi I'd have the exact same response as you, "what complexity? oh wait I see I've memorized everything oops")


Not at all. As an example, consider how 55 and 57 are pronounced. "PachPAN"and "SattaVAN". The components have changed arbitrarily for no reason. 70 is "Sattar" but 71 becomes "IkHattar". 2 is "Do", but 12,22,32 use "Ba" as the prefix. Plenty more cases like this.

Compare this to "Fifty five" and "Fifty seven".


I noticed that Hindi hasn't been represented by its own script in the 'Number' column which it should.

http://www.sf.airnet.ne.jp/ts/language/number/hindi.html


That, is the problem with transliterating into English. Otherwise it is quite staight forward (even the pronunciation). Also, language's ability to conjugate words has to be considered. Languages branching from sanskrit,


yeah came here to say this. Huli seems to be pretty much the same as english except base-15 instead of base-10. It even has the special case of the second 10 or 15 being different in form from the rest of the numbers.

edit: actually it seems like the Huli system is more uniform than English. It doesn't switch up the word order after 15. So it's "15 and 1 ..." whereas english goes "3 and 10.." and then "2x10 and 1..."


French spoken in Belgium and Switzerland has 70 = septante and 90 = nonante. In parts of Switzerland, 80 = huitante.


He clearly states it's his opinion. E.g. mandarin is one of the least complex for him, and yet

http://www.sf.airnet.ne.jp/ts/language/number/mandarin.html


I didn't see Russian listed anywhere on there, but I suspect it would be in the top 20 on this list. It is a pretty straightforward base 10 complicated by archaic phonetic rules that change the pronunciation and stress of words with logical roots in unintuitive ways.

In addition, countable nouns (like cars, people, cities, but also including multiples of 100, 1000, etc...) change form depending on how many of them there are (1, 2-4, 5-20, 21-24, 25-30 etc...) Usually these separate forms are phonetically related, but sometimes there is no connection at all. These rules don't come in to play when strictly counting numbers until 200, but is an integral part of what makes it hard to count things in Russian.

There are also wrinkles like the word for 40 (сорок) and 90 (девяносто) that don't fit in the usual tens pattern like 20 (двадцать - two * ten) or 30 (тридцать - three * ten). Any Russian speakers care to explain what's going on with those two?


Initially, Russian used the same convention for 40 as it does for other multiples of 10. Other Slavic languages still do. However, 4 (четыре) is the longest word by syllable count in the 1..10 range, so over time a shorter word that used to mean "a bag with 40 skins" (apparently a standard count to make some article of garment) came to replace it. The original meaning is all but forgotten now, and сорок means only 40 now.

90 also used to use the more common form of "nine tens", but for some reason came to be replaced by something that looks like it means "nine out of hundred" but the etymological explanations for it seem to be rather inconsistent. One explanation is that Russians used to count by 9 -- remnants of that can be seen in fairy tale expressions for "very far" -- "beyond three times nine lands".


Thanks for sharing. Studying Russian has helped me notice interesting patterns in languages. Where there is much friction (due to heavy usage, difficult pronunciation, or both) languages tend to break rules to make things easier to say.

For example, it's trivial to conjugate a verb like "контролировать" that you might only use occasionally, but verbs that you say dozens or hundreds of times a day, like "идти" become increasingly irregular.


You're welcome.

Irregular verbs generally tend to be the ones that are used most often, and that are most archaic.

Looking at languages there are lost of interesting patterns you can notice. It's even more fun if you look at ones from an entirely different family. Some agglutinating languages may have no irregular verbs at all.


Concerning 40 - “sorok” was a name for a unit of measure for fur. One sorok was a bundle consisting of 40 animal furs.

As for 90 - devyanosto - I think it comes from “9 to 100”. Its strange though its 9 and not 10.


I'd put traditional Danish numbering a bit further up the list... it's pretty strange (http://www.olestig.dk/dansk/numbers.html)


I was surprised to see Danish so high on the list, but after a short while it's not too surprising. It's base-20 for the first 20, like English. Then it's backwards base-10 up to 99 with special names for the whole 10s, 42 is pronounced as "2 and 40". Above 99 it's base-10, 420 is "400 20". But if it's 428 it's "400 8 and 20", but 512 would be "500 12". It's not difficult, it's just a special rule for 1-20, backwards for 21-99, and then straight as you'd expect (including the irregular first 20). Okay, it is quite confusing for none native speakers. To our defense, we use a system more like the Norwegian and Swedish for formal documents including contracts and cheques, though the latter has been phased out in Denmark.

The "perfect" would obviously be a purely base-10 with suffix if it's 10's, 100's, ect.


That's nearly exactly how german works, 428 is "4-vier 100-hundert 8-acht and-und 20-zwanzig", 512 is "5-fünf 100-hundert 12-zwölf" (excuse my rusty german). The und thing is a germanic thing I think.


"Und" is "and" in English, and "og" in Danish, and is used in Danish as well. I think Danish and German is quite similar as you say. It's been 20 odd years since I learned to speak German and it's long since forgotten.


Another article that was published a while ago had an interesting take on it. There is a quite high correlation between numbering system of a language and how quickly/well kids speaking that language learn counting and math skills. Apparently, the article itself is taken down, but I found an archived version. https://web.archive.org/web/20141215072819/http://playthink....


There are a few articles linked on the bottom of the page (dead links unfortunately) that purport to show the same.

> "Surprisingly enough, it's proven that Chinese-speaking children are better at counting numbers than English-speaking counterparts because of their language. Bilingual children are better at counting when they think in Chinese than in English. The irregularity of the English number system makes it harder for children to count numbers properly."

Not sure I'd give much credence to that hypothesis, though. Hard to disentangle the many factors influencing the results. Having said that, the Chinese numbers are pleasantly short and logical, by and large.

English has the advantage again in big numbers, where we have million, billion, trillion, quadrillion, etc., with the Latin prefix N indicating 10^6N (long scale, old British usage and continental Europe) or 10^(3+3N) (short scale, American usage).

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


If the questionable hypothesis is correct, this would surely factor into the assessment of numerical IQ.


Maybe it's been taken down because it reeks of bad linguistics and bad anthropology. Not to mention the obvious that being good at counting doesn't make one good at academic subjects. I studied math and didn't see a number larger than 10 after I got my BSc.


> I studied math and didn't see a number larger than 10 after I got my BSc.

Presumably you were not a kid anymore at that time. The OP was mentioning about how easy is for kids to acquire/improve their maths skills if counting is made easier by the language itself. That probably doesn't correlate that well with those kids' academic performances 15 or 20 years later, but that was not the point.


There’s a whole theory of learning that suggested that some languages were more suited to mental gymnastics for a particular field of study (math, logic, biology) and that maybe we could further human progress by teaching children the curriculum in that language.


It seems that a child will perhaps learn to count quicker in Japanese than in French, say, but the complexity and inclusion of factors/compounds also seem like they would push a more complex understanding of number to be adopted.

I wonder if a French people make change with 20 Euro-cent coins more often than others do.


I bet they use card instead... In Germany you stand in line waiting for everyone to find exactly the right change, be them young or old. Most people pay with cash even though it seems to get more common to use card. Euro has at least eight different coins. Sweden has 1, 2, 5, 10 as coins but most people still pay with card because it's easier and people are not burned by the big brother syndrome of the WW1/2 :-)

Would be interesting to see relative difficulty of each language, some of them are pretty close and have very similar difficulty while others are close but widely different difficulty.


Another Germany related comment today. Made my day :) It really becomes annoying when you have to wait a minute because an old lady needs to count all her coins in Lidl. Back to the original topic, as someone who can speak a few languages, I find the arguments stated in the article quite interesting. Obviously, just because one speaks Chinese doesn't mean they will definitely be a wunder-kind in math. Yet, it plays an important role in speeding up the learning process.


It's not only old ladies that have to count their coins, everyone young or old stands there with the head deep down over the purse trying to find those microscopic coins :-)


Khmer is quite complex, and isn't on the list:

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

Up to 30, it's got a base-5 component so, for example, 16 = dap pram muoy (10 5 1). From 30 onwards, like Thai it follows the more straightforward Chinese number system.

The numbers in Scottish Gaelic have recently been changed and are now base 10:

https://gaelicgrammar.org/~gaelic/mediawiki/index.php/Numera...


Can any native Hindi speakers comment on the difficulty of doing math in a language where every number 1-100 has its own name?


Thats incorrect (in the article). The words are compound words, and they really should not be counted like they are here.

example:

chauntees = 34 = 30 and 4. Word for 30 is tees and word for 4 is char - combined to form chaun-tees.

chhuttees = 36 = 30 and 6. Word for 30 is tees and word for 6 is chey - combined to form chhut-tees.

So on for all the words from 20 till 99. The combination rules might not be obvious here in transcription, but they come naturally to a Hindi speaker. So in reality there are dedicated words for 1 thru 19, and then the rest are compounds formed from the words corresponding to each digit.


(Native Marathi, competent Hindi speaker here. Marathi has the same problem)

So, it's not like each number has a different name.

However, it's almost like that.

Basically, the numbers can be broken down into a logical tens and ones place -- e.g. 45 will be five-forty (paintalees -- pai/talees), however the exact way to say "five" will change based on the number, as will the exact way to say "forty".

There's not much logic to it -- some tens series are more regular than others -- which means you effectively end up memorizing it, but subconsciously.

Imagine numbers in English but there were three ways of saying each digit, and each number 1-100 would pick from the synonyms. It's basically like that. That is to say, it's not too hard to deal with -- you'll mentally be associating the numbers with their words so it's not hard to say it out, and because they're synonyms not hard to understand when spoken.


Every number doesn't have its own name. If you observe closely there is a pattern. From 21 to 99, you can observe that every digit at tens place decides the suffix and the digit at ones place decides the prefix.


Further, the author says "because of a lot of irregular pronunciation, you have to memorize 100 different words as if it were a centesimal system". But I could say the same for English. We won't say "three-ty-three", we say "thirty-three". Hindi's irregularities are pretty much at the same level.


No, for English the thirty series is always "thirty-foo", and numbers ending in three are always "foo-three". It is true that you don't use the same word for the number when it's in the tens place (like Chinese), but that's as complex as it gets (and the teens, of course).

In Hindi 40 and 41 use a different word for 40. 51 and 53 use a different word for 50. 55 and 45 use a different word for 5. Plus there are smaller but still significant differences between pretty much every number -- e.g. it's chauBees, but puchees and chauNtees.


I am not a native Hindi speaker by any means, and I certainly haven't done math in it. But my experience (in places like Delhi) is that people routinely use Hindi up to 20, then give up and switch to English.


This is only true for young urban middle class people.


Yeah, my sample is fairly biased in that direction. That and rickshaw wallahs who'll speak the language of their market I guess.


It's not that difficult. The names are different but they "make sense". It's like 'fifteen', 'sixteen' and 'seventeen' stretched up to 100. Different names, but the pattern is sort of obvious with a few exceptions here and there.


I am a native Hindi speaker and I don't think Hindi is very different from base-10 number system(as the article acknowledges) thus there shouldn't be any difficulty as such. Although I can't say that I have done any kind of mathematical calculation in Hindi script/numerals ever.

NOTE: Hindi has its own script for numbers as well which the article is missed to point out.


The base 60 Sexagesimal system used by the Sumerians is always an interesting one.

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


> The number 60, a superior highly composite number, has twelve factors, namely 1, 2, 3, 4, 5, 6, 10, 12, 15, 20, 30, and 60, of which 2, 3, and 5 are prime numbers. With so many factors, many fractions involving sexagesimal numbers are simplified.

It really makes a lot of sense actually.


This is why I still do woodwork (as a hobby) in imperial units.


TFA has a section on Assyrian, but that's a decimal system, which made me wonder where the sexagesimal came from. It appears that although Assyrian and earlier Akkadian were written in cuneiform, they are Semitic languages that adopted their writing system from the otherwise unrelated Sumerian language, and apparently didn't bother to adapt the numerals to the decimal system.

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


Akkadians et al. kept using both decimal and sexagesimal arithmetic in parallel.


Wow, Tongan number system is simply beautiful. Pure elegance that I'm sure could be defined mathematically very simply. I myself can only scribble a naive implementation for natural numbers in Javascript:

  const base = ["noa", "taha", "ua", "tolu", "fa", "nima", "ono", "fitu", "valu", "hiva"]
  const tongan = n => Array.from(n.toString()).map(Number).map(i => base[i]).join(" ")
Not as pretty as I thought. Probably would look better in functional language.


English numbers aren't much harder.

    englishNumbers n = ten9 !! (n - 1)
      where infixr 7 <<>>
            (<<>>) = liftA2 (<>)
            ten1 = ["one", "two", "three", "four", "five", "six", "seven", "eight", "nine"]
            ten2 = ten1 <> ["ten", "eleven", "twelve"] <> (["thir", "four"] <> prefixes) <<>> ["teen"] <> (["twen", "thir", "for"] <> prefixes) <<>> ["ty"] <<>> ([[]] <> ten1)
              where prefixes = ["fif", "six", "seven", "eigh", "nine"]
            ten3 = ten2 <> ten1 <<>> ["hundred"] <<>> ([[]] <> ten2)
            ten6 = ten3 <> ten3 <<>> ["thousand"] <<>> ([[]] <> ten3)
            ten9 = ten6 <> ten3 <<>> ["million"] <<>> ([[]] <> ten6)


I theorize that humans do poorly with too much regularity and we actually benefit from irregularity, unlike computers.

In Haskell, first line would be the same without the const and the other could be

tongan = intercalate " ".reverse.map ((base !!).(`mod` 10)).takeWhile (> 0).iterate (`div` 10)

(ISTM that there must be a better alternative to takeWhile + iterate).


I wrote it in Scala below; it's a bit shorter, and I really like the map(base). Getting the digits from a number turns out to be most of the work, and the int->string->int conversion also seems to be the best approach.

  val base = List("noa", "taha", "ua", "tolu", "fa", "nima", "ono", "fitu", "valu", "hiva")
  def tongan(n: Int) = n.toString.map(_.asDigit).map(base).mkString(" ")


Danish typically ranks high on these lists because the names for some of the tens have etymological roots in base 20.

But this doesn't add any complexity, compared to having just named tens.

Nobody is doing any kind of everyday counting in base 20 in Denmark. Everything is base 10, with 9 irregular named numbers for the multiples of 10.


As a parent of English/Danish bilingual children I have to tell you that you are very wrong on this.

My children still occasionally make mistakes when saying numbers in the range 50-99 in Danish, they haven't said the English numbers wrong for years.

That the word for 50 contains the word "tre" (three) and the word for 90 contains the word "fem" (five) is very confusing to our children, especially when the English equivalents are so simple in comparison.


Fair enough. As a child I could never remember if it was 50 or 60 that had "halv" (50 is halvtreds, 60 is treds, neither word have any resemblance to 5, 6 or 10, but 50 sounds a bit like it ought to be half of 60), but my point is that the number system has nothing to do with base 20 except a few etymological roots of some names, that for all intents and purposes might as well be random.

But you are right: they are worse than random, since they are named close enough to other entities to be confuseaable.


I think they're understanding the complexity of the Japanese number system by quite a lot: https://en.wikipedia.org/wiki/Japanese_counter_word


Classifiers are mostly orthogonal to the number system, and they're really no different from e.g. English using "a herd of cattle" or "a murder of crows" to redundantly encode the kind of thing being talked about. I'm actually not aware of any language that doesn't have different units of measurement for different objects, it's just that some languages effectively make it mandatory to use them. (E.g. in Chinese you could just always say 一个 to mean "one" but it sounds strange when there's a specific form that's more common.)


Yes, they are different from English. In English you say "one herd of cattle", "two herds of cattle", and so on. You just need to know a plural of "herd" and the regular numbers.

In Japanese the numbers themselves depend on the counter. You can't say "one day", "two days", "three days". You can only say "one day (ichinichi)", "foobar (futsuka)", "bazbar (mikka)", and so on. And this counting system is used pretty much only for days. Except similar words to "foo" and "baz" here are also used to count some things. But not the others.

Also the rules of combining a numeral and the counter are very inconsistent. Here's my implementation of Japanese counters, suffices to say the English version would be like 5 lines of code:

https://github.com/tshatrov/ichiran/blob/master/dict-counter...

And here's the pronounciation generator for so called "regular" numbers.

https://github.com/tshatrov/ichiran/blob/master/numbers.lisp...

I.e. 1000 = issen (ichi+sen) 3000 = sanzen (san + sen), 800 = happyaku (hachi + hyaku).


The completely different number words used for some things are actually not related to the counter, although it may appear like that because the written form uses the Chinese-style number + counter system. The spoken words are holdouts from ancient Japanese (before Chinese become influential), which TFA discusses separately.

The situation is similar to Latin or Greek numerals in English, which are also applied pretty inconsistently. E.g. duplicate, triplicate, quadruple, ... but pair, triple, quadruple, ...

In general, all languages are riddled with exceptions, ambiguities, contradictions and archaic forms, but it's easier to notice them when you're learning the language later in life and have the "logical" structures of your mother-tongue to compare them to.


No way. It is absolutely different in practice because of Japanese counter words.

A counter word is a counting prefix (different from the abstract number word) plus different suffixes for a variety of things. This object is long and thin, so it has one suffix. This object is a drop of liquid, so it has another suffix. This is a small animal, so it gets another suffix. The counting words for use with these suffixes are different from abstract numbers.

Frankly, the system is bananas.

Abstract numbers in Japanese are very simple and logical, but the overall counting system of e.g. English is objectively simpler, and I don't think you can disregard counting when examining the number system.

In English, it would be equally correct to say "10 cows" or "a herd of cattle." Literally translating the first (without counting words) in Japanese would be incorrect.


That's what GP yorwba said.


No, GP is equating Japanese and English counting (cf. "really no different") when, in fact, Japanese is vastly more complex.


Someone just made these up in the middle ages:

https://www.quora.com/Why-is-a-group-of-crows-called-a-murde...

I have never heard or read the words "a murder of crows" (or "a parliament of owls" and similar contrivances) except in lists of collective nouns.


The example was poorly chosen, but obligatory measure words are very much a feature of English; compare "a pair of pants" / "a pair of scissors" / "a pair of glasses" / "a loaf of bread". Note that all of those "pairs" refer to a single object.


Moreover, Japanese has TWO parallel number systems (as does Korean). The Sinitic system, enumerated here, is used for naming numbers, counting with most counter words, and counting large quantities, whereas the native Japanese system is used with certain common counter words.

Compare:

     Jap  Sin
  1  ひとつ  イチ
  2  ふたつ  ニ
  3  みっつ  サン
  4  よっつ  ヨン
  5  いつつ  ゴ
  6  むっつ  ロク
  7  ななつ  シチ
  8  やっつ  ハチ
  9  ここのつ キュウ
  10 とお   ジュウ
The native Japanese numerals are themselves variable: I have listed the forms they assume when paired with the つ counter. For example, two days is rendered as ふつか and six days as むいか.

Further reading: https://en.wikipedia.org/wiki/Japanese_numerals https://japanese.stackexchange.com/questions/14959/are-there...


Did you mean "underestimating"?


I actually meant understating. But that works too.


Typo on traditional Welsh:

The traditional system is basically vigesimal (base 20), but it calls 50 "half-hundred" and 19 "two-nine", and it also uses 15 as a reference point.


im surprised not to see lezgi language here. we have 1 to 10 10+1 to 9 20+ 1 to 19 (ie 37 is 20 and 19) 40+ 1 to 19 3x20+ 1 to 19 (ie 63 is 3 twenties and 13) 4x20+ 1 to 19 hundred


> Polari is an in-group language of gay and lesbian people, theatrical people, and circus people in Britain. It's interesting 8 and 9 are called "6 + 2" and "6 + 3" in Polari.

Crazy interesting https://www.youtube.com/watch?v=Y8yEH8TZUsk


Doesn't hindi have its own script for numbers as well?

The 'Number' column doesn't reflect the same fact very well.

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


Why is hungarian considered more complex than english or norwegian? Hungarian has regular "on ten one" for 11 and "on ten two" for 12, when english and norwegian have different words; and teens are arguably also more complex.


probably because it has special words for 20 and 30, and switches between "9 on 20" to "30 plus 1"


Nice to see that Mandarin and Japanese have simple number systems compared to English. It might be worthwhile to learn them and impress your friends while you're reading numbers from restaurant menu-cards :)


Apparently the person who compiled this has never tried to actually count items in Japanese, to figure out which of the two number systems to use and which counter words to use.


The person who compiled it is Japanese


the one thing missing is the two mandarin words for 2 (essentially 2 and couple, used in different contents)


Every numeral in Mandarin does have 2 words. It's like NATO phonetic alphabet "Alpha, Bravo, Charlie, ...". "零一二三四五六七八九" maps to "洞幺两参肆伍六拐八勾".

What's more, there are multiple characters for the same numeral, mostly used to counter tempering in bookkeeping.


Wouldn't unary be considered the least complex?


Which language/society/culture uses unary?


Some very dead ones. Unary works like hash marks. We have archaeological records of that number system but GP is wrong. Doing multiplication in your head with unary would be a horrible experience. And any number over ten would put the listener to sleep.

I suspect in a unary language system people would invent their own counting strategy in their head.

Edit: ah but Wikipedia reminds me that gauge systems such as for grinding or wire use unary for negative numbers. Eg 000 guage wire or OO ground flour.


Probably lots of neolithic tribes could be said to have unary number schemes, but such schemes would max out at e.g. 6 instead of 100.


How do they quantify complexity?


I've deliberately chosen a title for this submission that says more clearly what the content is about, and thus helps people decide whether to click through and have a look.

The page's actual title is: "Number Systems of the World"

I don't think that's as informative.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: