Characteristics of A Good Programming Language
Characteristics of A Good Programming Language
Programming Language
DR. DEBARPITA SANTRA
ASSISTANT PROFESSOR I
AMITY INSTITUTE OF INFORMATION TECHNOLOGY KOLKATA
AMITY UNIVERSITY KOLKATA
Simplicity
A good programming language must be simple and easy to learn and use.
It should provide a programmer with a clear, simple, and unified set of concepts that can
be grasped easily.
The overall simplicity of a programming language strongly affects the readability of the
programs written in that language, and programs that are easier to read and understand
are easier to maintain.
It is also easy to develop and implement a compiler or an interpreter for a simple
programming language.
However, the power needed for the language should not be sacrificed for simplicity. For
example, BASIC is liked by many programmers because of its simplicity.
Naturalness
A good language should be natural for the application area for which it is designed.
That is, it should provide appropriate operators, data structure, control structures, and a
natural syntax to facilitate programmers to code their problems easily and efficiently.
FORTAN and COBOL are good examples of languages possessing high degree of
naturalness in scientific and business application areas, respectively.
Abstraction
Abstraction means the ability to define and then use complicated structures or operations in
ways that allow many of the details to be ignored.
The degree of abstraction allowed by a programming language directly affects its ease of
programming.
For example, object- oriented languages support high degree of abstraction. Hence, writing
programs in object- oriented languages is much easier.
Efficiency
Programs written in a good programming language are translated into machine code
efficiently, are executed efficiently, and acquire relatively less space in memory.
That is, a good programming language is supposed with a good language translator (a
compiler or an interpreter) that gives due consideration to space and time efficiency.
Structured Programming Support