Posts Tagged ‘Basics’

PostHeaderIcon Computational Linguistics

Computational linguistics is considered as synonym of natural language processing. The main task of Computational linguistics is to construct programs in order to process words and texts in natural language. It is an interdisciplinary field.

The term, computational linguistics, was coined by David Hays, member of Automatic Language Processing Advisory Committee (ALPAC). The final report of ALPAC proposed a new field called computational linguistics and machine translation should be considered as short-term engineering goal. This progression from machine translation to computational linguistics occurred in 1974.

A computer system is considered as linguistic if it uses some data or procedures that are language dependent and large. Therefore not every program that process natural language text is related to linguistics. Word processors, for example, process natural language text but they are not sufficiently language dependent.

PostHeaderIcon What is the language of computer?

As computer is an electronic machine, it can feel only electricity. It cannot understand human languages. So computer can understand a language which is directly related to electricity. So which language the computer can understand? The answer is binary language or machine language. The binary language consists of only two numbers 0 and 1 where 0 represent low voltage and 1 represent high voltage.

New words can be formed by mixing 0’s and 1’s. For example, 11 means 3, 100 means 4, and 101 means 5. Alphabets should be given some code so that they can be easily converted to binary form. For example, in ASCII code A means 65, B means 66 and so on. Therefore 65 can be converted into binary form and when it is fed to computer, it can be understood as we expected.

It is too difficult for humans to write instructions in a pure binary form. So assembly language was developed. It consists of mnemonic codes such as ADD, SUB, STA and so on. These instructions will then be converted to machine language which the computer will happily understand and perform actions accordingly.

One layer above, we have high level language which is easy to understand. Examples are C, C++, Java, Python, and so on. Above these there are very high level languages that are mostly used for some special purpose. SQL, for example, is a very high level language.