Prolog学习之旅:第二天的深入探索
在Prolog的学习中,第二天的学习内容丰富且具有挑战性,我们将深入探讨递归、列表、元组、统一化以及数学运算等重要概念。
第一天的自学任务
在开始第二天的学习之前,我们先回顾一下第一天的自学任务:
- 查找资源 :
- 寻找一些免费的Prolog教程。
- 找到一个支持论坛(有多个可供选择)。
- 为你使用的Prolog版本找到一个在线参考资料。
- 实践操作 :
- 创建一个简单的知识库,表示你喜欢的书籍和作者。
- 找出知识库中由一位作者撰写的所有书籍。
- 创建一个表示音乐家和乐器的知识库,同时表示音乐家及其音乐类型。
- 找出所有弹奏吉他的音乐家。
第二天:接近理解的关键时刻
第二天的学习就像电影《雨人》中主角对暴躁法官瓦普纳的痴迷一样,你可能正处于对Prolog这门神秘语言开始理解的关键时刻。即使一开始没有完全理解,也不要灰心,我们将逐步掌握更多的工具和技巧。
递归的运用
Prolog是一种声明式语言,与Ruby和Io等命令式语言不同,在处理列表或树等集合时,我们通常使用递归而不是迭代。下面是一个关于家族树的例子,展示了如何使用递归解决基本推理问题:
father(zeb, john_boy_sr).
father(john_boy_sr, john_boy_jr).
ancestor(X, Y) :- father(X
超级会员免费看
订阅专栏 解锁全文
3

被折叠的 条评论
为什么被折叠?



