My father once tried to get me to learn Sanskrit. He tried to persuade me by telling how great is this bhasha, how almost all modern Indian languages can be traced to Sanskrit. Obstinate as I was, never heeded to this productive proposal of his. Though a matter that always made me think is one thing he said in an attempt to convince me. ‘Sanskrit has been established as the best language for computer programming’.
I soon found out this was not just my father’s claim, its a well accepted claim in our society. Most of the people when they go into ‘proud Indian mode’, one of the first thing they say is Sanskrit being accepted as the best computer programming language. Ah! Now, that’s a tall claim. I gladly agreed with you on your argument that Sanskrit is a supercalifragilisticexpialidocious language. But as a programming language, let me elaborate why this claim is unfounded.
Finesse of an Ancient Language
There is no denial that Sanskritam is perhaps one of the oldest of languages. It is also one of the first structured and organized language with a strict set of syntax and grammar. Most of its credit goes to Panini, a Sanskrit grammarian who gave a comprehensive and scientific theory of phonetics, phonology, and morphology during a time when people in other part of the world were drawing on caves. Panini’s works distinguishes between the language of sacred texts and the usual language of communication. He gives formal production rules and definitions to describe Sanskrit grammar. Starting with about 1700 basic elements like nouns, verbs, vowels, consonants he put them into classes. The construction of sentences, compound nouns etc. is explained as ordered rules operating on underlying structures in a manner similar to modern theory.
In many ways Panini’s constructions are similar to the way that a mathematical function is defined today. His phenomenal work has influenced modern linguists like Chomsky and De Saussure.
Origin of a Misconception
In 1985, a researcher at NASA, Rick Briggs published a paper in AI magazine titled ‘Knowledge Representation in Sanskrit and Artificial Intelligence’. It talks about using Sanskrit in Natural Language Processing or NLP. Goal of NLP in field of Artificial Intelligence is to make computers understand natural languages, the human speak instead of usual artificial languages like C or Prolog. And Briggs in his paper suggested that the grammar of Sanskrit as we noted earlier is structured and rule-based; hence, was particularly better suited in this application. Briggs said it might help AI researchers “finally solve the natural language understanding problem”.
Now, let me make this clear, nowhere in his paper has Briggs mentions that Sanskrit is indeed the best language suited for computer programming. Briggs specifically uses Sanskrit in context of Natural Language Processing, not computer programming itself. He merely mentions that structure and preciseness of Sanskrit as a natural language allows it to be processed much more easily by machines as compared to other languages. There is a lot of difference between Sanskrit being suitable for NLP and it being the best language for computer programming.
Worth the Effort?
I don’t think so. For one, it requires everyone to learn Sanskrit. Even proud nationalists who promote this myth wouldn’t learn Sanskrit, leave alone developers sitting in another corner of the Earth. Secondly, the whole architecture of computers needs to be redesigned. All this require lots of money, years of research and man power.
Thirdly, its on the assumption that an NLP based on Sanskrit has been produced. That’s a NO. And also the concept of NLP in itself is by no means the “best” way to program a computer. In fact, There is no best programming language. Even a regular coder will tell you that there is no clear winner, you use the one that best suites your requirement.
Apparently there were a lot of research initiatives on Sanskrit and NLP but in the 90s, NLP moved into a phase of machine learning and alogrithms thereby making the grammar-logical approach less important. So, there goes. The whole idea of having a Sanskrit based AI… dead.
But that doesn’t stop the myth from propagating everywhere. While Sanskrit may be a good language for knowledge representation, It certainly is not best language for programming. And it is about time we put this misconception to rest.
Here’s Rick Brigg’s Paper