Filters








390,889 Hits in 3.8 sec

Evaluation strategies for functional logic programming

Sergio Antoy
2005 Journal of symbolic computation  
This paper discusses the elements that play a relevant role in evaluation strategies for functional logic computations, describes some important classes of rewrite systems that model functional logic programs  ...  Recent advances in the foundations and the implementations of functional logic programming languages originate from far-reaching results on narrowing evaluation strategies.  ...  Acknowledgements I would like to thank Bernhard Gramlich and Salvador Lucas Alba for inviting me to write a preliminary version of this paper for the International Workshop on Reduction Strategies in Rewriting  ... 
doi:10.1016/j.jsc.2004.12.007 fatcat:swjeqk5wgfaf3nai5v5ufuws7q

Evaluation Strategies for Functional Logic Programming

Sergio Antoy
2001 Electronical Notes in Theoretical Computer Science  
This paper discusses the elements that play a relevant role in evaluation strategies for functional logic computations, describes some important classes of rewrite systems that model functional logic programs  ...  Recent advances in the foundations and the implementations of functional logic programming languages originate from far-reaching results on narrowing evaluation strategies.  ...  Acknowledgements I would like to thank Bernhard Gramlich and Salvador Lucas Alba for inviting me to write a preliminary version of this paper for the International Workshop on Reduction Strategies in Rewriting  ... 
doi:10.1016/s1571-0661(04)00265-8 fatcat:zpcju56vxba7dlr5uq4cyr7gma

Reduction Strategies for Declarative Programming

Michael Hanus
2001 Electronical Notes in Theoretical Computer Science  
This paper surveys reduction or evaluation strategies for functional and functional logic programs.  ...  On the other hand, they should also support the programmers to write programs in a declarative way ignoring the influence of the evaluation strategy to the success of a computation as good as possible.  ...  [15] contains a recent proposal of functional logic programming with constraints. Conclusions We have discussed some known reduction strategies for functional and functional logic programs.  ... 
doi:10.1016/s1571-0661(04)00273-7 fatcat:jtcnfes5ireuxlctdpm6nxkehm

Integration of functional and logic programming

Michael Hanus, Herbert Kuchen
1996 ACM Computing Surveys  
In this paper we discuss our practical experiences with the use of different search strategies in functional logic programs.  ...  In particular, they provide higher-order functions and demand-driven evaluation from functional programming together with logic programming features like non-deterministic search and computing with partial  ...  Functional Logic Programming and Curry Integrated functional logic programming languages combine features from functional programming and logic programming.  ... 
doi:10.1145/234528.234734 fatcat:o34vgwwnbbcllnwozymoizu3am

A unified computation model for functional and logic programming

Michael Hanus
1997 Proceedings of the 24th ACM SIGPLAN-SIGACT symposium on Principles of programming languages - POPL '97  
This computation model combines efficient evaluation principles of functional languages with the problem-solving capabilities of logic programming.  ...  We propose a new computation model which combines the operational principles of functional languages (reduction), logic languages (non-deterministic search for solutions), and integrated functional logic  ...  This example shows the advantages of functional logic programming compared to logic programming. Functional languages provide efficient and in some cases optimal evaluation strategies.  ... 
doi:10.1145/263699.263710 dblp:conf/popl/Hanus97 fatcat:ov3hqg3vbbbvfeblfbo265a3ja

Functional logic programming

Sergio Antoy, Michael Hanus
2010 Communications of the ACM  
STRATEGY A crucial semantic component of a functional logic programming language is its evaluation strategy.  ...  For instance, the demand-driven evaluation of functional programming applied to non-deterministic operations of logic programming leads to more efficient search strategies.  ... 
doi:10.1145/1721654.1721675 fatcat:3jer6iphojcmxmkjh7sv4kdaeu

Functional Logic Programming: From Theory to Curry [chapter]

Michael Hanus
2013 Lecture Notes in Computer Science  
This paper surveys the foundations of functional logic programming that are relevant for Curry, the main features of Curry, and extensions and applications of Curry and functional logic programming.  ...  Functional logic programming languages combine the most important declarative programming paradigms, and attempts to combine these paradigms have a long history.  ...  Furthermore, I would like to thank Sergio Antoy, Bernd Braßel, and Germán Vidal for their constructive remarks to improve the readability of the paper.  ... 
doi:10.1007/978-3-642-37651-1_6 fatcat:bi7s3wzbvbh5xf57gsox7uhhjq

The integration of functions into logic programming: From theory to practice

Michael Hanus
1994 The Journal of Logic Programming  
The author is grateful to Herbert Kuchen, Rita Loogen, and an anonymous referee for their detailed comments on a previous version of this paper.  ...  There are also other lazy evaluation strategies for functional logic programs which are slightly different from lazy narrowing presented so far.  ...  Lazy Narrowing Strategies The narrowing strategies discussed so far correspond to eager evaluation strategies in functional programming.  ... 
doi:10.1016/0743-1066(94)90034-5 fatcat:fp45iy6ne5chhg6q2z4wwcktu4

From Logic to Functional Logic Programs [article]

Michael Hanus
2022 arXiv   pre-print
Since amalgamated functional logic languages offer flexible as well as efficient evaluation strategies, we propose an opposite approach in this paper.  ...  To extend logic languages with the compact notation of functional programming, there are various proposals to map evaluable functions into predicates in order to stay in the logic programming framework  ...  Evaluation The main motivation for this work is to show that functional logic programs have concrete operational advantages compared to pure logic programs.  ... 
arXiv:2205.06841v1 fatcat:du6oucg3zrfptfxrlxhkky55ue

Teaching functional and logic programming with a single computation model [chapter]

Michael Hanus
1997 Lecture Notes in Computer Science  
Taking into account recent developments in the integration of functional and logic programming, it is possible to teach the ideas of modern functional languages like Haskell and logic programming on the  ...  This is mainly due to the different underlying computation models-deterministic reduction and lazy evaluation in functional languages, and non-deterministic search in logic languages.  ...  This generalizes concurrent computation models for residuating logic programs [1, 21] to functional logic programs.  ... 
doi:10.1007/bfb0033854 fatcat:tq22j666wbe73frg6gvvtvnqwa

Improving Lazy Non-Deterministic Computations by Demand Analysis

Michael Hanus, Marc Herbstritt
2012 International Conference on Logic Programming  
Functional logic languages combine lazy (demand-driven) evaluation strategies from functional programming with non-deterministic computations from logic programming.  ...  We demonstrate the positive effects of this program transformation with KiCS2, a recent highly efficient implementation of the functional logic programming language Curry.  ...  The operational semantics is based on an optimal evaluation strategy [6] which is a conservative extension of lazy functional programming and logic programming.  ... 
doi:10.4230/lipics.iclp.2012.130 dblp:conf/iclp/Hanus12 fatcat:brk5o7y5rvajrgcoiqkpnxgop4

Page 3853 of Mathematical Reviews Vol. , Issue 98F [page]

1998 Mathematical Reviews  
strategies for functional logic languages.  ...  Summary: “We introduce novel, sound, complete, and locally op- timal evaluation strategies for functional logic programming lan- guages.  ... 

Exploiting non-determinism through laziness in guarded functional languages [chapter]

Roland Dietrich, Hendrik C. R. Lock
1991 Lecture Notes in Computer Science  
Guarded Functional Programming is an approach to integrate functional programming, represented by equations and rewriting, and logic programming, represented by Horn clauses and SLD-resolution: the selection  ...  This approach makes it possible to exploit in the functional programming world the non-determinism which is inherent in the logic programming world.  ...  Special thanks to Nick Graham for carfully reading earlier drafts of this paper.  ... 
doi:10.1007/3540539816_68 fatcat:xfd3upvxdjbqncvcywy23uwzsi

KiCS2: A New Compiler from Curry to Haskell [chapter]

Bernd Braßel, Michael Hanus, Björn Peemöller, Fabian Reck
2011 Lecture Notes in Computer Science  
In this paper we present our first steps towards a new system to compile functional logic programs of the source language Curry into purely functional Haskell programs.  ...  This enables the application of various search strategies to extract values from the search space.  ...  Actually, [1, 31] define lazy evaluation strategies for functional logic programs with call-time choice semantics where actual arguments passed to operations are shared.  ... 
doi:10.1007/978-3-642-22531-4_1 fatcat:cyitk3hjnncoddwrcobjih2a7q

Memoized Pull-Tabbing for Functional Logic Programming [article]

Michael Hanus, Finn Teegen
2020 arXiv   pre-print
Pull-tabbing is an evaluation technique for functional logic programs which computes all non-deterministic results in a single graph structure.  ...  We evaluate a first implementation of this improved technique in the Julia programming language.  ...  The operational semantics is based on an optimal evaluation strategy [4]-a conservative extension of lazy functional programming and logic programming.  ... 
arXiv:2008.11999v1 fatcat:i7c6gnt22jblveiamsljjgkwwe
« Previous Showing results 1 — 15 out of 390,889 results