What Are Programming Language Generations?
Programming languages can be roughly divided into five generations.
- The first language was
- Second generation language is
- Third-generation languages are high-level languages that are easier to understand by humans, including commonly used ones
- Fourth-generation languages are also called query languages, non-program-oriented languages, or very high-level languages. The syntax is closer to human languages, such as SQL.
- SQL can use select, from, order by instructions to query and sort database contents. If you are ordering data in a high-level language, we have to use two for loops.
- Query languages refer generally to various programming languages for database or information system queries.
- A query language must be capable of expressing all the queries that a relational algebra can express, so it is called relational complete . [2]
The fifth generation of programming language
- The fifth generation language is also called natural language or logic-oriented language. It is mainly used in artificial intelligence (AI) research. It has no special syntax and allows computers to deal directly with problems written in human language.
- The fifth-generation programming language (5GL) is an intent that expects computers to automate problem solving. Based on certain constraints given by the problem, it is left to the program to process without the need for programmers to invest in human development. Most programming languages based on restricted and logical deduction, and some other declarative languages, can be classified as fifth-generation programming languages.
- In the 1980s, the fifth-generation programming language was considered the way of the future, and some predicted that the fifth-generation programming language would replace all other high-level languages for system development except for low-level machine composition languages. It is worth mentioning that from 1982 to 1993, Japan invested a lot of research and funds in the fifth generation computer system case, hoping to use these tools to design a huge computer network. But as larger cases were established, the shortcomings of the methods became more apparent. It turns out that given a set of problem-constrained constraints, being able to derive an effective and efficient algorithm to solve this problem is itself a very difficult problem. The key steps will not be fully automated without human intervention by the beginning of the 21st century, and still require human programmers' understanding of the problem and superior insight. [2]