Katapayadi is an ancient Indian system, perhaps more heavily used in Kerala, that denotes numbers using letters of the alphabet to form words that can be easily remembered. The table below explains the mapping between digits and letters. In addition to the letters mentioned in this chart, all stand-alone vowels are treated as zero and all consonants without a vowel are ignored. The wikipedia has a good article on the topic that explains the rules and practices for this transformation and lists a few popular examples. An article on Namboothiri website touches upon some subtler points, and gives an example of historical significance.
Since the mapping from digits to letters is one to many, the system provides great flexibility in choosing words that have a meaning and are often relevant to the context. To those who are used to the system, the thought process comes effortlessly. About 10 years back, when we bought a new car and its registration number was 7242, my grandmother spontaneously encoded it as Ravi-Ratham (रविरथं , രവിരഥം). This is as perfect as a name can get for a car that was to be driven by Ravi (the name of our chauffeur at that time). The convention in katapayadi is to write the letters representing digits in the ascending order of powers of 10 starting from the unit’s place, and this has been followed in the example here.
There is an interesting trick using the Katapayadi system which will be the subject of our next article, and, for which I hope this post has set the stage.
Spread the love
13 - 13Shares
I presume, this has some relation to why sanskrit (and derived languages) is said to be the perfect language for coding. On a sidenote, why is the convention from right to left? Why not the other way round? Is it to start from the units place and progress higher in powers of 10? 7242 being stored as 1110001001010 has any implication? Just thinking loud…
It is a good question as to why why the convention is from left to right (increasing powers of 10) – or little-endian as it is called these days. I am not sure, but I read somewhere that in original Indian mathematical tradition, the representation of numbers was little-endian. So, for example, if you have to add two numbers, you add the left-most two digits first, carry over the over-flow value to the right and proceed. This seems to be more suited for a language that is written from left to right. When Arabs adopted the decimal system from India, they adapted it to their right-to-left writing by making it big-endian. Later, when Europeans borrowed the system from Arabs, they did not change it back to the little-endian style, and so we ended up with what we have today. Theoretically, this is just a convention for representation, and has no impact on the effectiveness of calculation. Many modern processors can use either of the systems. This article gives some details on this.
As for suitability for use in programming, I'm not sure if this has a direct impact. I think it has more to do with the grammatical structure of the language, due to which you can change the order of the words without changing the meaning of the sentence (instruction).