2010
DOI: 10.1145/1721654.1721675
|View full text |Cite
|
Sign up to set email alerts
|

Functional logic programming

Abstract: Combining the paradigm features of both logic and functional programming makes for some powerful implementations.

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1
1
1

Citation Types

0
107
0
4

Year Published

2011
2011
2020
2020

Publication Types

Select...
7

Relationship

4
3

Authors

Journals

citations
Cited by 105 publications
(111 citation statements)
references
References 32 publications
0
107
0
4
Order By: Relevance
“…"Reverse" is the same but with built-in lists. "Tak" is a highly recursive function on naturals [34] applied to arguments (27,16,8) and "TakPeano" is the same but with user-defined natural numbers in Peano representation. Note that the Prolog programs use a strict evaluation strategy in contrast to all others.…”
Section: Benchmarksmentioning
confidence: 99%
See 2 more Smart Citations
“…"Reverse" is the same but with built-in lists. "Tak" is a highly recursive function on naturals [34] applied to arguments (27,16,8) and "TakPeano" is the same but with user-defined natural numbers in Peano representation. Note that the Prolog programs use a strict evaluation strategy in contrast to all others.…”
Section: Benchmarksmentioning
confidence: 99%
“…To evaluate the efficiency of non-deterministic computations (Fig. 4), we sort a list containing 15 elements by enumerating all permutations and selecting the sorted ones ("PermSort" and "PermSortPeano" for Peano numbers), compute the last element x of a list xs containing 100,000 elements by solving the equation "ys++[x] =:= xs" (the implementation of unification and variable bindings require some additional machinery that is sketched in Section 5.3), and match a regular expression in a string of length 200,000 following the non-deterministic specification of grep shown in [8]. The results show that our high-level implementation is not far from the efficiency of MCC, and it is superior to PAKCS which exploits Prolog features like backtracking, logic variables and unification for these benchmarks.…”
Section: Benchmarksmentioning
confidence: 99%
See 1 more Smart Citation
“…Thus, we assume familiarity with basic concepts of functional logic programming (details can be found in recent surveys [4,15]). For our examples and implementation, we use the declarative multi-paradigm language Curry [12,17] that combines functional programming features (demand-driven evaluation, higher-order functions) with logic programming features (computing with partial information, unification, non-deterministic search for solutions) and concurrent evaluation.…”
Section: Motivationmentioning
confidence: 99%
“…4 If the programmer wants to define assertions that should be only lazily evaluated (i.e., they might not be faithful but could be desirable for assertions on infinite data structures), our library also provides an operator to attach such lazy assertions to expressions:…”
Section: Main >> Enforceassertionsmentioning
confidence: 99%