This category is on programming languages and documents that fully or partially support the basic principles of logic programming: declarative, relational programming based on first-order logic, via Horn clauses, where authors write databases of facts and rules (clauses), and users supply goals, which programs work to prove via resolution or backward chaining. Logic programming is used extensively in artificial intelligence, AI. The first such language was Prolog.
On this page, languages are arranged in two groups and levels: 1) Top group: types or classes of languages. 2) Bottom group: specific languages, with their own directory category.
Please submit links to this category involving only Constraint Logic languages. Submit links involving Constraint or Logic languages to their respective categories.
This category holds logic-based languages which implement extensive constraint programming concepts. The commonly accepted, proper nomenclature for these languages is: Constraint Logic.
Please submit links to this category involving only Constraint Logic languages. Submit links involving Constraint or Logic languages to their respective categories.
Functional logic languages are a class of multiparadigm language, where the goal is to combine the two most important types of declarative languages: functional languages and logic-based languages. They are hybrid languages, based on (higher-order) predicate calculus extended with characteristics of the lambda-calculus which allows introducing elements such as (strong(er)) typing. The commonly accepted, proper nomenclature for these languages is: Functional Logic.
Compared to pure functional languages, functional logic languages are more expressive, via availability of features like function inversion, partial data structures, existential variables, non-deterministic search. Compared to pure logic languages, functional logic languages are more efficient operationally since functions allow more efficient evaluation strategies (lazy evaluation, deterministic reductions) than predicates.
Activity in this area has risen sharply since the early 1990s.
Please submit links to this category involving only Functional Logic languages. Submit links involving Functional or Logic languages to their respective categories.