Logic Programming with Monads and.pdf

  1. 1、本文档共15页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Logic Programming with Monads and

Logic Programming with Monads andComprehensionsYves Bekkers  Paul Tarau yAbstractWe give a logical reconstruction of all-solution predicates in terms oflist comprehensions in Prologs and we describe a variety of logic pro-gramming constructs in terms of monads and monad morphisms. Novelmonad structures are described for lazy function lists, clause unfoldingsand a monad morphism based embedding of Prolog in Prolog is given.Keywords: computing paradigms, logic programming, monads, listcomprehensions, all solution predicates, Prolog, higher-order uni cation,lazy function lists.1 IntroductionMonads and comprehensions, have been successfully used in functional program-ming as a convenient generalization of various structurally similar programmingconstructs starting with simple ones like list processing and ending with intri-cate ones like CPS transformations and state transformers. We refer to the workof Philip Wadler [16, 17] for a long list of powerful examples and to Moggi [10]for the categorist sources of the concept of monad.All-solution predicates are the logic programming siblings of list comprehen-sions in functional programming languages.Let us point out an interesting (although possibly episodical) parallel be-tween these two programming paradigms. When doubts have been raised byGoguens thesis [6] on the usefulness of higher order constructs for functionalprogramming, this seemed deja vu for logic programmers familiar with War-rens paper [18]. After emulating some basic -calculus constructs in terms of rst-order Horn-clause logic (i.e. what is also known as pure Prolog) Warrenhas shown that most of the expressiveness of higher-order constructs can beemulated in rst order logic programming.All-solution predicates have been recognized by Warren as a notable excep-tion and have been present in logic programming ever since. However, in theUniversite de Rennes I and IRISA/INRIA Rennes, bekkers@irisa.fryDepartement dInformatique, Universite de Moncton, ta

文档评论(0)

l215322 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档