现在学习Prolog
Learn Prolog Now

原始链接: https://lpn.swi-prolog.org/lpnpage.php?pageid=top

《立即学习Prolog!》是一门面向初学者的课程,旨在介绍Prolog编程,提供在线版本(自2001年起)和书籍形式。其核心目标是为几乎没有或没有先验计算经验的人们提供一个自包含、易于理解的资源。 然而,该课程强调Prolog最好通过*实践*来学习。虽然文本提供了基础理解,但作者强烈鼓励读者积极练习,使用Prolog解释器并完成提供的练习——以及超越练习! 课程创建者欢迎反馈和建议,以不断改进课程的未来版本,旨在创建一个进入Prolog编程世界的有价值的入口。

## Hacker News 上关于 Prolog 的讨论 一篇指向学习 Prolog (swi-prolog.org) 的链接引发了 Hacker News 上的讨论,揭示了这种语言的独特性和挑战性。 许多评论者分享了学习 Prolog 的经验,指出它迫使人们从根本上重新思考编程概念——几乎就像是重新学习编程。 虽然 Prolog 在定理证明和声明式编程等任务中功能强大,但由于库生态系统较小,它的通用性不如 Python 等语言。 然而,它确实是图灵完备的,并且能够构建完整的应用程序。 一些用户认为 Prolog 对于建模领域和设计简洁的代码非常有用,即使只是在用其他语言实现之前进行“思想实验”。 还有人设想了一种工具,可以将“类似 Prolog”的查询嵌入到其他语言中,用于约束和关系管理。 讨论中俏皮地将 Prolog 描述为夏洛克·福尔摩斯可能会使用的语言,突出了它逻辑和演绎的方法。
相关文章

原文

Learn Prolog Now! is an introductory course to programming in Prolog. The online version has been available since 2001, and now there is also a throughly revised version available in book form.

We wanted to do two things with this course. First, we wanted to provide a text that was relatively self contained, a text that would permit someone with little or no knowledge of computing to pick up the basics of Prolog with the minimum of fuss. We also wanted the text to be clear enough to make it useful for self study. We believe that if you read the text, and do the associated exercises, you will gain a useful partial entry to the world of Prolog.

But only a partial entry, and this brings us to our second point. We want to emphasize the practical aspects of Prolog. Prolog is something you do. You can't learn a programming language simply by reading about it, and if you really want to get the most out of this course, we strongly advise you to get hold of a Prolog interpreter (you'll find pointers to some nice ones on this website) and work through all the Practical Sessions that we provide. And of course, don't stop with what we provide. The more you program, the better you'll get....

We hope you enjoy the course. And whether you're using this book to teach yourself Prolog, or you're using it as the basis for teaching others, we would like to hear from you. Please send us any comments/corrections you have so that we can take them into account in later versions.

联系我们 contact @ memedata.com