Home  About  Submit Site    
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.
Sites [ Submit ]
Curry - Multiparadigm declarative programming language seamlessly merges functional, logic, and concurrent programming paradigms; covers the most important operational principles in the area of integrated functional logic languages. Functional Logic Programming - Michael Hanus's pages on amalgamating functional and logic programming. LPG - Generic functional logic language: functions defined by conditional rewrite rules, predicates defined by Horn clauses whose bodies may contain equations, disequations, or classical atomic formulae. Extant version uses extension of SLD-resolution merged with innermost narrowing. RELFUN - Relational-Functional Language: logic-programming language with call-by-value (eager) expressions of non-deterministic, non-ground functions; clauses are Hornish, succeeding with true(s), or footed, returning any value(s), and define operations (relations, functions) allowing (apply-reducible) higher-order syntax with arbitrary terms (constants, structures, variables) as operators. ALF - Foundation: Horn clause logic with equality which consists of predicates and Horn clauses for logic programming, and functions and equations for functional programming. A full integration of both programming models, so any functional expression can be used in a goal literal and arbitrary predicates can occur in conditions of equations. HAL - Strongly typed, weakly moded, constraint-logic functional language designed to support construction, extension, and use of new constraint solvers. Escher - Declarative, general-purpose language, merges best features of functional and logic languages. Has types and modules, higher-order and meta-programming facilities, declarative input/output. Set of system modules provides many operations on standard data types: integers, lists, characters, strings, sets, programs. The Mercury Project - Logic/functional programming language which combines the clarity and expressiveness of declarative programming with advanced static analysis and error detection features.
Click [ Submit ] above to Add a New Site, Update a Site, or Remove a Site from this Category.
This directory is made available through a Creative Commons Attribution license from the DMOZ Organization.

© 2023 - Midnight Design Productions, LLC