Characteristics of a Programming Language
- Readability: A good high-level language will allow programs to be written in some ways that resemble a quite-English description of the underlying algorithms. If care is taken, the coding may be done in a way that is essentially self-documenting.
- Portability: High-level languages, being essentially machine independent, should be able to develop portable software.
- Generality: Most high-level languages allow the writing of a wide variety of programs, thus relieving the programmer of the need to become expert in many diverse languages.
- Brevity: Language should have the ability to implement the algorithm with less amount of code. Programs expressed in high-level languages are often considerably shorter than their low-level equivalents.
- Error checking: Being human, a programmer is likely to make many mistakes in the development of a computer program. Many high-level languages enforce a great deal of error checking both at compile-time and at run-time.
- Cost: The ultimate cost of a programming language is a function of many of its characteristics.
- Familiar notation: A language should have familiar notation, so it can be understood by most of the programmers.
- Quick translation: It should admit quick translation.
- Efficiency: It should permit the generation of efficient object code.
- Modularity: It is desirable that programs can be developed in the language as a collection of separately compiled modules, with appropriate mechanisms for ensuring self-consistency between these modules.
- Widely available: Language should be widely available and it should be possible to provide translators for all the major machines and for all the major operating systems.
A coding standard lists several rules to be followed during coding, such as the way variables are to be named, the way the code is to be laid out, error return conventions, etc.