Xobni outlook add-in for your inbox
Add to Technorati Favorites

Saturday, October 13, 2007

Languages

If "Necessity is mother of invention" then definitely "Communication" is mother and "Language" is the invention. If there would have been no need for communication probably language would not had been developed. All forms of language whether it's verbal language or body language or some other form of language only underlines one fact "Need for communication". When we discovered computers we felt the need for communicating with computers for getting their job done. We knew that the language of humans cannot be used to communicate with computers as there are only two alphabets in computer's language "0" and "1". So only two choices left for us. Either we dump them and invent something that can understand our language or get ourselves to the task of learning and mastering their language. But the temptation of various possibilities that could be achieved with computers was too hard to resist. So we decided to communicate with computers in their own language. But sooner we found that the cost of achieving "those" various possibilties was much higher than the return. So we came out with one techincal adaptation of reality. If an Englishman need to talk to a Spainiard, neither of them know anything about the other language, he needs a translator, one who knows both English and Spanish. So we thought of creating some kind of translator that can convert some kind of language,close to our language, to the strings of 1 and 0 known to computers. But this translator will be a bit different. It itself will be a string of 1 and 0 which computers will use to convert an alien language to 1 and 0. But that was okay for us as it would be an one time investment. After that it can be used over and over again. And thus the envolution of language(for computers) began. One language and then other language more close to human language then other and so on.That language which will be feeded to translator, in technical terms, known as High level languages or Software languages and the translator came to be known as compilers. First came the assembly language slighly better than the 1 0 string but no better. Then came procedural languages, the object oriented languages both of them quite successful. After hearing all this a lehman is bound to think why can't we use one most commonly used human language instead. A language in which we are well versed. The problem is none of the languages has context free grammer. By context free I mean that each statement in that language is unambigous. For example in hindi I can write "Mujhe sona accha lagta hai". From reading just this statement I can't deduce whether sone here means "diamond" or "sleeping". I need to know the context in which it is said. Likely on can create something in english as well(I cant think of anything). Sanskrit comes closest to a context free language. But then it is not a mass language.
Okay even if ours is not a context free language, why can't we just create one context free language and sit down rather than creating plothera of language. The reason is adaptablity. One language which might be perfect for one scenario may not be perfect for another. I will continue on this later.


:-

No comments: