Classification of programming languages: Programming languages can be classified according to various criteria. The most important grouping is by: abstraction level, purpose, execution method, and programming paradigm.
Classification of programming languages according to their Level of Abstraction:
- Low Level Languages are machine code languages, they are a set of instructions in binary code that the computer is capable of executing directly, specific to each type of processor or CPU. Examples: Machine language and assembly languages.
- High Level Languages more similar to natural language, close to the problem, we forget the internal structure of the computer Examples: C, Basic, Java.
Interesting: Higher level and lower level languages
Classification of programming languages according to their Purpose:
- General Purpose Languages allow the implementation of practically any algorithm, the level of abstraction is more uniform, it provides reasonable performance. Eg Pascal, C, C++, Java, Delphi, Lisp, Scheme.
- Specific Purpose Languages generally have a very restricted set of features and a high level of abstraction to accomplish specific tasks such as word processing, graphics, audio, video, and engineering. Examples: Snobol, SQL, Matlab.
Classification of programming languages according to their Execution method:
- Compiled languages translate the source code of the program to machine code or object code. Examples: C, Pascal
- Interpreted languages execute the instructions of a program line by line. They require the source code to run the program. Examples: Perl, Lisp.
Classification of programming languages according to their Programming Paradigm.
- Imperative languages are abstractions of some sequence of instructions that specify in detail the order of execution of the program. Examples: Fortran, Algol, Ada, Pascal, C, C++
- Declarative languages express what the program is to accomplish without prescribing how to do it, in terms of sequences of actions to be taken. Examples: SQL, HTML, RPG
- Functional languages consist of a set of pre-defined functions. Examples: Lisp, Scheme, Common Lisp, ML, CAML
- Logic languages express tasks using formal mathematical logic. Example: Prolog.
- Object Oriented Languages create a system of classes and objects following the schema of the real world to define the objects, actions and way of communicating between objects. Examples: C++, Java.