How are computer languages ​​classified


Perhaps you are now asking yourself: Why is there not just one programming language that all programmers work with? Since programming languages, unlike natural languages ​​that have developed over centuries, have to be artificially defined, one could have decided on a uniform programming language from the start.

First of all, one can see that there are certain programming languages ​​that have been defined primarily for novice programmers. They are usually kept very simple, i.e. the scope of the language is relatively small. They are easy to learn, but not very useful for solving very complex problems. Much more powerful programming languages ​​are required for this.

Another classification distinguishes so-called lower ones Machine languages (machine-level programming languages) and higher problem-oriented programming languages . Machine languages ​​enable very efficient programs to be created. However, they are dependent on the particular type of computer. In contrast, the high-level programming languages ​​are not so much oriented towards the commands that can be directly executed by the computers, but rather towards the problems to be solved. They are more understandable for people and easier to use.

Another reason why there are so many different programming languages ​​is that the problems to be solved are not all alike. Often, new programming languages ​​are defined that are specifically suited to certain classes of problems.

The higher programming languages ​​are based on certain concepts with which the solution of problems is formulated. Basically, there are five categories here - too Programming paradigms called - distinguish:


  • Imperative programming languages: Programs consist of sequences of commands (PASCAL, MODULA-2).
  • Functional programming languages: Programs are viewed as mathematical functions (LISP, MIRANDA).
  • Predicative programming languages: Programs consist of facts (valid facts) and rules that describe how new facts can be derived from given facts (PROLOG).
  • Rule-based programming languages: Programs consist of "if-then rules"; if a specified condition is valid, then a specified action is carried out (OPS5).
  • Object-oriented programming languages: Programs consist of objects that solve certain (partial) problems and can communicate with other objects via messages to solve an overall problem (SMALLTALK).

Or, more simply, the high-level programming language can be divided into two groups:

  • imperative (command-oriented) programming languages: A program consists of a sequence
    of commands to the computer.
    The program describes the
    Solution to a problem.
  • Declarative programming languages: Describes a program
    the general properties
    of objects and
    their relationships with each other.
    The program describes
    initially just the knowledge
    to solve the problem


Not all programming languages ​​can be clearly assigned to one of these classes. For example, LOGO is a functional programming language that also has imperative language concepts. Java and C ++ can be classified as imperative object-oriented programming languages, because Java and C ++ programs consist of communicating objects that are implemented internally using imperative language concepts.

Programming languages ​​in one category often only differ in syntactic subtleties. The basic concepts are similar. Therefore, it is generally not particularly difficult to learn another programming language if one has already mastered a programming language of the same category. The situation is different, however, when learning programming languages ​​in other categories, because the underlying concepts differ greatly from one another.

I like it:

LikeLoading ...