Logic Programming in Clojure
intensivesystems.net
intensivesystems.net
Also, it has been out of print for a while, and the second edition can be pretty expensive ($90-100ish used). The first edition is much cheaper ($2-5), and while the second covers a newer version of Prolog and greatly expands on the "projects in Prolog" chapters, the first still covers the core LP concepts pretty well.
I thought it was funny to do this in Lisp and not represent lists with parens, but I guess it's only syntatic sugar anyway.
Often vectors are used in Clojure DSLs to differentiate from the "operator syntax" which uses actual lists. There are some exceptions in even clojure.core macros, but often you can assume that any unquoted list is evaluated as a function or macro call, even if it is a macro parameter.