Details
-
Type:
Defect
-
Status:
Resolved
-
Priority:
Major
-
Resolution: Completed
-
Affects Version/s: None
-
Fix Version/s: None
-
Component/s: None
-
Labels:None
Description
Related to http://dev.clojure.org/jira/browse/LOGIC-92, these two snippets both return (nom/tie 'a_0 1) instead of three results for 1, 2, 3.
(run* [q]
(nom/fresh [a b c]
(fresh [x y]
(== (nom/tie b (nom/tie a x)) (nom/tie c q))
(infd x (interval 1 3)))))
(run* [q]
(nom/fresh [a b c]
(fresh [x y]
(infd y (interval 1 3))
(== (nom/tie b (nom/tie a x)) (nom/tie c q))
(== x y))))
fixed, http://github.com/clojure/core.logic/commit/ef27fa3ed2381f3ad4685d4bc59a298646a4febb
It would be nice if nominal didn't need to know about fd, as there will be other "enumerable" domains in the future. But this works great for now.