David Nolen <[email protected]> writes:
Hi David,
> Ambrose has submitted a patch which I need to go over. Even so, I
> don't think docstrings are going to help you that much.
It doesn't teach you logic programming, but at least it could explain
the arguments. Something like:
(defmacro exist [[& x-rest] & g-rest]
"Takes a vector of symbols that are provided as fresh vars in body."
{:arglists '([[sym*] & body])}
`(fn [a#]
(inc
(let [~@(lvar-binds x-rest)]
(bind* a# ~@g-rest)))))
> If you want to dig in I recommend reading:
>
> - The Reasoned Schemer
Yes, it's on my reading list. :-)
> When it comes to logic programming it does help to have a basic
> understand of the execution model.
>
> - William Byrd's thesis on miniKanren,
> https://scholarworks.iu.edu/dspace/handle/2022/8777
Got it.
> At this point you'll still be at loss as far as practical applications
> - for that you need to look at some Prolog literature:
>
> - Bratko's Prolog Programming for Artificial Intelligence
> - Sterling & Shapiro's Art of Prolog
>
> Attempting to compete with the existing high-quality literature is a
> non-goal for me at least.
>
> I admit that diving into core.logic is a bit of an adventure at this
> point (though I'd like to think a very rewarding one). As more people
> give it a shot I hope others will weigh in with wonderful
> tutorial/guides such as Ambrose's.
I'm looking forward to reading more of those. :-)
Bye,
Tassilo
--
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