A computer is conceived to be a device which would think, analyze and process information on its own. In other words, a computer is supposed to generate intellectual resource. To that extent, it is like a human mind – it can solve problems when provided with a logic and some data. Like the human mind, it too needs its own language. A programming language fills up this gap.
At its very basic, the computer being a digital device, understands only two quantum states. For our convenience, we have given the name ‘0’ to one value, and the name ‘1’ to its counterpart. At the next level, we have the machine language. One step up, we get assembly language. But all these are very non-intuitive and not conducive to detailed programming without errors. The programming language was a compromise devised to solve the problem – it will have enough of metaphorical and linguistic affinities to be understood by humans, and would be reducible to machine language so as to be comprehensible to the machine.
The first major languages were characterized by the simple fact that they were intended for one purpose and one purpose only, while the languages of today are differentiated by the way they are programmed in, as they can be used for almost any purpose. A programming language or computer language is a standardized communication technique for expressing instructions to a computer. It is a set of syntactic and semantic rules used to define computer programs. A language enables a programmer to precisely specify what data a computer will act upon, how these data will be stored/transmitted, and what actions will be taken under various circumstances. Different programming languages have different specifications, and these might include data types, data structures, instruction and control flow, design philosophy, compilation and interpretation.
In this section we provide links to various programming language resources.