Tuesday, June 21, 2011

Design and Implementation of Programming Languages

A programming language is an artificial language designed to express computations that can be performed by a computer. Programming languages can be used to create programs that control the behavior of a computer. A programming language is generally split in to two components of syntax and semantics. Many other programming languages have some kind of written specification of their syntax and/or semantics.

Programming languages share properties with natural languages related to their purpose as vehicles for communication. The main difference between programming languages and natural languages is that, programming language can be fully described and studied as it has a precise and finite definition. But the natural languages have changing meanings given by their users in different communities and they also lack the precise and complete semantic definition that a programming language has.

Although there have been attempts to create an universally accepted programming language, all these attempts failed. Development of a programming language depends on the diversity of the contexts in which languages are used.

One of the most common trend in the development of the programming languages has been to add more ability to solve problems by using higher level abstraction. Programming languages which were developed earlier were tied very closely to the underlying hardware of the computer. As the new programming languages have developed, more features are added to them and they are less tied to the hardware of the computer. Because programmers are less tied to the complexity of the computer, their programs can do more computing with less effort from the programmer.

No comments: