Functional and Constraint Logic Programming

Functional and Constraint Logic Programming
复制标题

DOI:
10.1007/3-540-45406-3_5
复制
发表时间:
2001-05
期刊:
--
影响因子:
--
通讯作者:
M. Rodríguez-Artalejo
M. Rodríguez-Artalejo
中科院分区:
其他
文献类型:
--
作者:
M. Rodríguez-Artalejo

文献摘要

被引文献

相似文献

摘要从J. Jaffar和J.L. Lassez在1987年[JL87]提出的约束逻辑编程(CLP)已经发展成为一种强大的编程范式,它支持逻辑(以Horn子句的形式)和特定于领域的方法的干净组合,用于约束满足,简化和优化。逻辑程序设计[Llo87,Apt90]的数学基础已成功地推广到CLP [JMMS96]。与此同时,CLP在许多领域的实际应用已经出现。在[JM94,MS98]中可以找到对CLP语言的理论、实现问题和编程应用的很好的介绍。另一方面,逻辑编程与其他声明式编程范式(特别是函数式编程)的结合在过去十年中得到了广泛的研究,为设计更具表达力的声明式语言提供了有用的见解。第一次尝试联合收割机结合功能和逻辑语言是由J. A.罗宾逊和E.E. Sibert在提出LOGLISP [RS82]语言时。[De86]中描述了其他一些关于函数+逻辑语言设计的早期建议。一个更近期的调查的运作原则和实施技术用于集成功能到逻辑编程可以发现在[Han94b]。
AbstractsStarting at a seminal paper published by J. Jaffar and J.L. Lassez in 1987 [JL87], Constraint Logic Programming (CLP) has developed as a powerful programming paradigm which supports a clean combination of logic (in the form of Horn clauses) and domain-specific methods for constraint satisfaction, simplification and optimization. The well established mathematical foundations of logic programming [Llo87, Apt90] have been succesfully extended to CLP [JMMS96]. Simultaneously, practical applications of CLP have arisen in many fields. Good introductions to the theory, implementation issues and programming applications of CLP languages can be found in [JM94, MS98]. On the other hand, the combination of logic programming with other declarative programming paradigms (especially functional programming) has been widely investigated during the last decade, leading to useful insights for the design of more expressive declarative languages. The first attempt to combine functional and logic languages was done by J.A. Robinson and E.E. Sibert when proposing the language LOGLISP [RS82]. Some other early proposals for the design of functional + logic languages are described in [De86]. A more recent survey of the operational principles and implementation techniques used for the integration of functions into logic programming can be found in [Han94b].