Sunday, September 27, 2009

Principles of Programming Languages - Module 1

Module 1
Defining Programming Languages

• A tool for instructing machines
• A means for communicating between programmers
• A vehicle for expressing high-level designs
• A notation for algorithms - they are used for specifying, organizing and reasoning about computations
• A way of expressing relationships between concepts
• A tool for experimentation
• A means of controlling computerized devices (Sethi, R.)

Reasons for Studying Concepts of Programming Languages

• Increased capacity to express ideas - it is widely believe that the depth at which we can think is influenced by the expressive power of language in which we communicate our thoughts. Awareness of a wider variety of programming language features can reduce such limitations in software development. Programming can increase the range of their software-development process by learning new language constructs.
• Improved background for choosing appropriate languages - Many professional programmers have had little education in computer science; rather they have learned programming on their own thought in-house training programs. Such training programs often teach one or two languages that are directly relevant to the current work of the organization. Many other programmers received their formal training in the distant past.
• Increased ability to learn new languages - Computer programming is a young discipline, and design methodologies, software development tools, and programming languages are still in the state of continuous evolution. This makes systems development exciting profession, but it also means that continuous learning is essential.
• Better understanding of the significance of implementation - In learning the concepts of programming languages, it is both interesting and necessary to touch on the implementation issues that affect those concepts. In some cases, understanding of implementation issues leads to understanding of why languages are designed the way they are. This in turn leads to the ability to use a language more intelligently, as it was designed to be used. We can become better programmers by understanding the choices among programming languages construct and the consequences of those choice.
• Increased ability to design new languages - to a student, the possibility of being required at some future time to design a new programming language may seem remote. However, most professional programmers occasionally do design languages of one sort or another.
• Overall advancement of computing - Finally, there is a global view of computing that can justify the study of programming language concept. Although it is usually possible to determine why a particular programming language become popular, it is not always clear, at least in retrospect that the most popular programming languages are the best available. (Sebesta, R.)

No comments:

Post a Comment

Related Posts with Thumbnails