clojure/core.logic — pull request #10 by ohpauleez (2012-10-24 23:40:40+00:00)
Title: Simple unification and Partial Maps added to ClojureScript's core.logic

With the changes in this pull request I can correctly replicate the work of Martin's [Datomic-like queries](http://martinsprogrammingblog.blogspot.com/2012/07/replicating-datomicdatalog-queries-with.html) and the examples of partial-map found on StackOverlow, the comments, and hints Kevin told me directly.

One oddity is:
```clojure
(m/run* [q]
(m/fresh [pm x]
(m/== pm (partial-map {:a x}))
(m/== pm {:a 1 :b 2})
(m/== x q))))
=> (1)
```
But,
```clojure
(m/run* [q]
(m/fresh [pm x]
(m/== pm (partial-map {:a x}))
(m/== pm {:a 1 :b 2})
(m/== pm q))))
=> (#PMap{:a })
```

However, the docs indication is that x should unify and we should see: `{:a 1}` returned

Thoughts?