问题标签 [clojure-core.logic]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
205 浏览

clojure - 为什么 core.logic 的输出重复给出相同的值?

我在 core.logic 中试过这个

期望结果是[1 4] [1 5]

但它是[1 4] [1 4] [1 5] [1 5]

然后我开始玩它并发现了这个:

哪里有[1 5]穿插[1 4]

怎么了?这种重复的东西应该是一个特性还是一个错误?

0 投票
1 回答
132 浏览

clojure - core.logic 的动态类型关系

在 core.logic 中定义或使用类型关系的最佳方法是什么?

我尝试了类似这样的方法来获得表单参数类型的简化表示,但是项目使用会导致各种问题

是否已经存在可用的适当关系,还是我应该以不同的方式表达?

0 投票
3 回答
961 浏览

prolog - 部分字典/记录统一?

我知道一些 Prologs 支持开箱即用的类字典关联数据结构。对于这样做的实现,它们是否支持与另一个实际上不包含所有键的结构部分统一的概念?

例如,在 core.logic/miniKanren 的语法中:

这将返回 q 绑定为 1 的单个结果。

Prologs 是否给这个操作或这个部分结构命名?

0 投票
2 回答
477 浏览

clojure - 具有 -ve 值的 Core.logic 有限域

我不确定为什么使用 -5 作为域值之一时下面的代码不返回任何结果

注意:此代码指的是 core.logic 0.8.0 beta 中的行为。

0 投票
2 回答
680 浏览

clojure - 有没有更好的方法来访问 Clojure 中的嵌套映射和向量?

我在 freebase 上从这里获取了一些 json (小心,你只能请求几次而不使用&key=your-key)。

我想将响应转换为类似于此的内容:

这是我在使用 clojure.data.json/read-string 后想出的代码:

提取数据似乎过于复杂,有没有更好的方法来做到这一点?这是可以使用 core.logic 的情况吗?如果是这样,怎么做?

0 投票
1 回答
670 浏览

clojure - 从 Clojure core.logic 中提取地图元素

我正在尝试使用 Clojure core.logic 从地图中提取数据。此代码按我的意愿执行:

但是,如果我向地图添加一些其他元素,则它无法匹配:

我明白为什么matcho地图不再一样了。我的问题是,我怎样才能改变它以使其再次工作?如何使其仅匹配地图中的某些键,或者如何使其匹配地图可能具有的任何随机键?

编辑:

我让它工作patial-map(感谢https://github.com/clojure/core.logic/pull/10

但是我发现了一个featurec应该用来代替的注释partial-map。我的新问题:如何将其更改为使用featurec

0 投票
1 回答
136 浏览

clojure - Clojure core.logic 生成父母

我有这个代码,它可以按照我的意愿执行,它递归地拉出给定人的父母:

问题是,对于我回去的每一代,我都必须添加一个新的测试。

有没有办法在 core.logic 中概括这一点?

0 投票
2 回答
524 浏览

clojure - Clojure 的 `core.logic` 中的目标排序

以下 Clojure 代码用于core.logic以两种不同的顺序解决具有相同目标的相同逻辑问题。这种排序选择导致一个快速完成而另一个挂起。

是否有避免此问题的通用解决方案或常见做法?

0 投票
1 回答
1092 浏览

clojure - 如何将 clojure core.logic 连接到数据库?

我一直在享受 Clojure core.logic,但我碰壁了。我需要能够让它使用数据库,无论是否 SQL,而不是内存数据结构。当我环顾四周时,我看到提到了一个to-stream函数,但没有使用它的可靠示例。

有没有人有一个将 core.logic 与数据库一起使用的好例子?

0 投票
1 回答
189 浏览

clojure - prolog 问题的适用性

作为开始使用 core.logic 的一种方式,我决定解决“九十九个 Prolog 问题”......

https://github.com/rodnaph/99-core-logic-problems

但是在遇到几个问题之后,根据我目前的理解,感觉 core.logic 并不是解决这些问题的正确方法(因为它们只需要一个答案)。

我可能误解了关系方法,但我是在找错树了吗?我应该只使用 Prolog 吗?

干杯。