Fifth-generation programming language: Difference between revisions

Content deleted Content added
No edit summary
Line 1:
A '''fifth-generation programming language''' (abbreviated as '''5GL''') is a [[programming language]] based on solving using constraints given to the program, rather than using an [[algorithm]] written by a programmer. Most [[constraint programming|constraint-based]] and [[logic programming]] languages and some [[declarative language]]s are fifth-generation languages.
 
While [[fourth-generation programming language]]s 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. [[Prolog]], [[OPS5]], and [[Mercury (programming language)|Mercury]] are examples of fifth-generation languages.<ref name="bala">E. Balagurusamy, ''Fundamentals of Computers'', Mcgraw Hill Education (India), 2009, ISBN 978-0070141605, p. 340</ref>
 
These types of languages were also built upon [[Lisp (programming language)|Lisp]], many originating on the [[Lisp machine]], such as [[ICAD (software)|ICAD]]. Then, there are many [[frame language]]s, such as [[KL-ONE]]. {{Citation needed|date=September 2010}}
Line 12:
Vendors have been known on occasion to advertise their languages as 5GL.<ref>[http://www.it-analysis.com/channels/content.php?cid=9096 What makes a 5GL?]</ref> Most of the time they actually sell [[Fourth-generation programming language|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|date=October 2013}}
 
== See also ==
* [[Constraint programming]]
* [[Programming paradigms]]