示例
user> (def tmp {\a 1})
{\a 1}
user> (logic/run* [q] (logic/featurec tmp {\a q}))
(1)
user> (logic/run* [q] (logic/fresh [x] (logic/== x \a) (logic/featurec tmp {x q})))
()
第一次逻辑搜索符合预期。第二次应该返回与第一次相同的结果,但它失败了。
core.logic中有测试覆盖了其他模式下的特征,即在新鲜模式下的featurec(即:(logic/featurec {x q} tmp))。但是,这种模式似乎并不通用。
有人建议我在这里发表这篇帖子,因为我无法创建一个可以访问Jira的账户来报告这个bug。