When talking about a programming language we do mean an artificial language that expresses so-called computations. Computations represent a general term for any type and kind of algorithm, process or measurement that can be carried out by a machine or complex system such as a computer. Strictly speaking programming languages are multifarious and characterized by their usage to create special programs of any kind. In this case we are talking about the development of programs that are responsible for the control of the behavior of a machine, system or computer. Its respective behavior gets expressed by means of pre-defined and precisely pre-written algorithms.
The earliest and first programming languages were developed and consequently used to control, manage and coordinate the behavior of specific machines such as for instance Jacquard looms and player pianos. In this context it has to be mentioned that thousands of different programming languages of diverse kind and type have been regularly developed. Strictly speaking the majority of existing programming languages characterize computations in an imperative form. This procedure is also called imperative programming which focuses the specific description of computations by means of statements that may provoke the change of a program state.
Furthermore it can be said that a programming language is usually divided into two single components – strictly speaking syntax (form) and semantics (meaning). Concerning this matter it has to be added that there do exist specific programming languages which possess specifications of their respective syntax and/or semantics. However, there are of course other types of programming languages which are defined by means of a so-called specification document. For instance the well-known C programming language is particularized by a so-called ISO standard. Other programming languages, however, are characterized by means of a dominant implementation which gets usually used as a general reference.
Another important aspect considering programming languages consists in the fact that every single language has specific building blocks which are responsible for the description of data as well as the respective transformations and processes. These transformations and processes are generally applied to primitive building blocks which are defined and described by both semantic (semantics) and syntactic (syntax) rules. In this context we are talking about special semantic and syntactic rules that do characterize their individual form, meaning, structure, format and constitution.
Concluding we do present a clearly arranged list of specially selected programming languages. Please mind that this list does not include all notable and existing programming languages. There are many others more which are not part of this list here within this article.
- C++ – ISO/IEC 14882
- C# – ISO/IEC 23270
- Fortran – ISO/IEC 1539