Fifth-generation programming language

From Wikipedia, the free encyclopedia
Jump to navigation Jump to search

A fifth-generation programming language (5GL) is a programming language based on problem solving using constraints given to the program, rather than using an algorithm written by a programmer.[citation needed] Most constraint-based and logic programming languages and some other declarative languages are fifth-generation languages.

History

While fourth-generation programming languages are designed to build specific programs, fifth-generation languages are designed to make the computer solve a given problem without the programmer. This way, the user only needs to worry about what problems need to be solved and what conditions need to be met, without worrying about how to implement a routine or algorithm to solve them. Fifth-generation languages are used mainly in artificial intelligence research. OPS5 and Mercury are examples of fifth-generation languages.[1]

These types of languages were also built upon Lisp, many originating on the Lisp machine, such as ICAD. Then, there are many frame languages, such as KL-ONE.[citation needed]

In the 1980s, fifth-generation languages were considered to be the way of the future, and some predicted that they would replace all other languages for system development, with the exception of low-level languages.[citation needed] Most notably, from 1982 to 1993, Japan[2][3] put much research and money into their fifth-generation computer systems project, hoping to design a massive computer network of machines using these tools.

However, as larger programs were built, the flaws of the approach became more apparent. It turns out that, given a set of constraints defining a particular problem, deriving an efficient algorithm to solve it is a very difficult problem in itself. This crucial step cannot yet be automated and still requires the insight of a human programmer.

Common misconception

Vendors have been known on occasion to advertise their languages as 5GL.[4] Most of the time they actually sell 4GLs with a higher level of automation and knowledge base. Because the hype of the 1980s faded away and the projects were eventually all dropped, 5GL awareness has also dropped; this has opened doors to the vendors to re-use the term in marketing their new tools, without causing much controversy among the current generations of programmers.[citation needed]

What's previous


See also

References

  1. ^ E. Balagurusamy, Fundamentals of Computers, Mcgraw Hill Education (India), 2009, ISBN 978-0070141605, p. 340
  2. ^ Richard Grigonis. "FIFTH-GENERATION COMPUTERS". Retrieved 2008-03-05. 
  3. ^ ALP. "Association for Logic Programming (ALP)". Retrieved 2008-03-05. 
  4. ^ What makes a 5GL?
Retrieved from "https://en.wikipedia.org/w/index.php?title=Fifth-generation_programming_language&oldid=856466348"
This content was retrieved from Wikipedia : http://en.wikipedia.org/wiki/Fifth-generation_programming_language
This page is based on the copyrighted Wikipedia article "Fifth-generation programming language"; it is used under the Creative Commons Attribution-ShareAlike 3.0 Unported License (CC-BY-SA). You may redistribute it, verbatim or modified, providing that you comply with the terms of the CC-BY-SA