为什么miniKanren的名字总是以“o”结尾?

发布于 2025-01-02 13:27:43 字数 78 浏览 1 评论 0原文

所有迷你看人关系都以字母o结尾。这样做的动机是什么? 我看到 Clojure core.logic 库也执行此操作。

All miniKanren relations end with the letter o. What is the motivation for this?
I see that the Clojure core.logic library also does this.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

魔法唧唧 2025-01-09 13:27:43

在《理性的阴谋家》的序言中,他们是这样解释的:

关系,即返回目标作为其值的函数,其名称以上标“o”结尾(例如,caronullo)。

因此,它是表示关系的符号。

In the Preface of The Reasoned Schemer, they explain it thus:

A relation, a function that returns a goal as its value, ends its name with a superscript 'o' (e.g., caro and nullo).

So, it's a notation to denote a relation.

初见 2025-01-09 13:27:43

这是因为 The Reasoned Schemer 的作者希望 miniKanren 关系的表示法能够唤起以 ? 结尾的普通 Scheme 谓词(例如,null?,配对?)按照惯例。上标 o,如果你足够仔细(并且以前听过这个故事),看起来就像是修改后的 ?

It's because the authors of The Reasoned Schemer wanted the notation of miniKanren relations to be evocative of ordinary Scheme predicates which end in ? (e.g., null?, pair?) by convention. The superscript o, if you squint enough (and have heard this story before), looks like a modified ?.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文