Check 'lein deps :tree' for conflicting core.logic versions, and delete
the target directory to make sure you don't have old classfiles sitting
around.

On 04/09/2016 04:47 AM, Daniel Ziltener wrote:
> Oops, yes, in my actual code it was both ":db/id", so that's not the
> issue. It's really confusing - today, it works. No idea why. I restarted
> the REPL multiple times to try it, and it never worked. Today it worked
> with the exact same code file on the first try. After getting a very
> strange exception that "clojure.core.logic.core" couldn't be compiled
> due to "clojure.lang.Compiler$CompilerException:
> java.lang.ClassNotFoundException:
> clojure.core.logic.protocols.ITreeConstraint,
> compiling:(clojure/core/logic.clj:1:1)
>        java.lang.ClassNotFoundException:
> clojure.core.logic.protocols.ITreeConstraint". I'm thoroughly confused,
> but I hope it will keep working.
> 
> Am Samstag, 9. April 2016 03:45:00 UTC+2 schrieb [email protected]:
> 
>     Hard to say, the class cast exception will have more information in it
>     that could cast light on the issue. You also are using :id in one
>     variation, and :db/id in the other.
> 
>     On 04/08/2016 05:46 PM, Daniel Ziltener wrote:
>     > Hi clj,
>     >
>     > I'm trying to do some simple core.logic stuff. My input is a
>     vector of
>     > maps, which I turn into a source for core.logic using
>     > |
>     > (defn make-datamap-rel [datapile]
>     >   (fn [q]
>     >     (fn [a]
>     >       (to-stream
>     >        (map #(unify a % q) (flatten datapile))))))
>     > |
>     >
>     > Now I have written two variants for solving my problem. The first
>     works
>     > flawlessly:
>     > |
>     > (defn-find-cat-and-tag-id [pile cat]
>     >   (let [datamap-rel (make-datamap-rel pile)]
>     >     (run*[q]
>     >         (datamap-rel (partial-map {:id q :category cat}))
>     >         )))
>     > |
>     >
>     > The second variant throws the ClassCastException:
>     > |
>     > (defn-find-cat-and-tag-id [pile cat]
>     >   (let [datamap-rel (make-datamap-rel pile)]
>     >     (run*[q]
>     >       (fresh [qid]
>     >         (datamap-rel (partial-map {:db/id qid :category cat}))
>     >         (==q qid)
>     >         ))))
>     > |
>     >
>     > I have no idea why this fails. It just doesn't make any sense. Any
>     ideas?
>     >
>     > Best regards,
>     > zilti
>     >
>     > --
>     > You received this message because you are subscribed to the Google
>     > Groups "Clojure" group.
>     > To post to this group, send email to [email protected]
>     <javascript:>
>     > Note that posts from new members are moderated - please be patient
>     with
>     > your first post.
>     > To unsubscribe from this group, send email to
>     > [email protected] <javascript:>
>     > For more options, visit this group at
>     > http://groups.google.com/group/clojure?hl=en
>     <http://groups.google.com/group/clojure?hl=en>
>     > ---
>     > You received this message because you are subscribed to the Google
>     > Groups "Clojure" group.
>     > To unsubscribe from this group and stop receiving emails from it,
>     send
>     > an email to [email protected] <javascript:>
>     > <mailto:[email protected] <javascript:>>.
>     > For more options, visit https://groups.google.com/d/optout
>     <https://groups.google.com/d/optout>.
> 
> 
>     -- 
>     And what is good, Phaedrus,
>     And what is not good—
>     Need we ask anyone to tell us these things?
> 
> -- 
> You received this message because you are subscribed to the Google
> Groups "Clojure" group.
> To post to this group, send email to [email protected]
> Note that posts from new members are moderated - please be patient with
> your first post.
> To unsubscribe from this group, send email to
> [email protected]
> For more options, visit this group at
> http://groups.google.com/group/clojure?hl=en
> ---
> You received this message because you are subscribed to the Google
> Groups "Clojure" group.
> To unsubscribe from this group and stop receiving emails from it, send
> an email to [email protected]
> <mailto:[email protected]>.
> For more options, visit https://groups.google.com/d/optout.


-- 
And what is good, Phaedrus,
And what is not good—
Need we ask anyone to tell us these things?

-- 
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to [email protected]
Note that posts from new members are moderated - please be patient with your 
first post.
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
--- 
You received this message because you are subscribed to the Google Groups 
"Clojure" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to