[LOGIC-61] partial-map in ClojureScript does not correctly unify map members Created: 25/Oct/12 Updated: 26/Oct/12 Resolved: 26/Oct/12 |
|
| Status: | Resolved |
| Project: | core.logic |
| Component/s: | None |
| Affects Version/s: | None |
| Fix Version/s: | None |
| Type: | Defect | Priority: | Major |
| Reporter: | Paul deGrandis | Assignee: | David Nolen |
| Resolution: | Completed | Votes: | 0 |
| Labels: | None | ||
| Description |
|
In the most recent changes to the core.logic's CLJS support ( (m/run* [q]
(m/fresh [pm x]
(m/== pm (partial-map {:a x}))
(m/== pm {:a 1 :b 2})
(m/== x q))))
=> (1)
but,
(m/run* [q]
(m/fresh [pm x]
(m/== pm (partial-map {:a x}))
(m/== pm {:a 1 :b 2})
(m/== pm q))))
=> (#PMap{:a <lvar:x_3>})
The latter should unify to {:a 1} |
| Comments |
| Comment by David Nolen [ 26/Oct/12 6:04 PM ] |
|
fixed, http://github.com/clojure/core.logic/commit/d39fd90ae096c1a940e79ea898a9f86d4b106362 |