【发布时间】:2014-02-03 23:59:32
【问题描述】:
首先,作为学习 prolog 的书,您推荐什么书。其次,有没有一种简单的方法可以一次加载多个 .pl 文件?目前只用 ['name.pl'] 一次做一个,但一遍又一遍地做很烦人。我也在用this学习。
谢谢
【问题讨论】:
-
我还想提一下 Ivan Bratko 的书,“人工智能的 Prolog 编程”,因其清晰明了的演示风格而受到赞誉(当之无愧)。
标签: prolog
首先,作为学习 prolog 的书,您推荐什么书。其次,有没有一种简单的方法可以一次加载多个 .pl 文件?目前只用 ['name.pl'] 一次做一个,但一遍又一遍地做很烦人。我也在用this学习。
谢谢
【问题讨论】:
标签: prolog
首先,欢迎来到 Prolog!我想你会发现它是有益的和愉快的。
我经常看到推荐的书籍是Prolog 的艺术、Programming Prolog 和Clause and Effect。我有Art和Programming,它们都是好书; 艺术当然更具有百科全书性,而编程则更线性。我最近经常咨询 Art 和 Craft,还有一些更奇怪的(例如 Logic Grammars)。我希望接下来购买Prolog Programming in Depth。我不认为有很多糟糕的 Prolog 书籍应该尽量避免。不过,我可能会保存 Craft 和 Practice 以供以后使用。
您可以通过列出它们一次加载多个文件:
:- [file1, file2, file3].
另外,由于 'name.pl' 以 '.pl' 结尾,您可以省略引号;单引号只有在 Prolog 通常不将括起来的原子视为原子时才真正需要。
希望这对您的旅程有所帮助并祝您好运。 :)
【讨论】:
如果你喜欢数学介绍,Logic, Programming and Prolog (2ED) 是一本有趣的书,作者是 Nilsson 和 Maluszinski。
由 Clocksin 和 Mellish 编写的 Prolog 编程是经典的入门教科书。
【讨论】:
在 SWI-Prolog 中,也可以查看:
?- make.
自动重新加载自查阅后修改过的文件。
【讨论】:
您可以查看this question。后面推荐了几本好书。
【讨论】:
这是一个不错的简短介绍:http://www.soe.ucsc.edu/classes/cmps112/Spring03/languages/prolog/PrologIntro.pdf
我还想说那里有一个不错的面向 swi 的 pdf,但我找不到。
【讨论】:
我不会重复其他答案中已经提到的经典选择,但我将添加 Michael Covington、Donald Nute 和 Andrew Vellino 关于 Prolog Programming in Depth 的注释。我想强调的两章是关于手部追踪和可废止规则的章节。前者向您展示了如何以有效且有用的方式在铅笔和纸上追踪 Prolog 计算。后者向您展示了如何创建支持可废止规则的 Prolog 代码。与您在 Prolog 中习惯的规则不同,这些规则要么完全成功,要么完全失败,并且不受规则本身未说明的任何内容的影响,可废止规则可以在规则中说明的信息上成功,但可以被知识库中的其他规则削弱以简洁易懂的方式使通常正确但有例外的表达式更容易。书中说得更好:“另一方面,可废止规则是不能应用于某些情况的规则,即使这些情况满足其条件,因为知识库中其他地方的某些知识阻止了它的应用。”
这是一个有趣的概念,我在其他书中没有找到。
【讨论】: