`cljs/core/logic.clj` to be compatible with `:include-macros`, `:refer-macros` usage
A few were of the form (is (= expr1) expr2), which always passes. Changed these to (is (= expr1 expr2)). Many had extraneous  after the deftest name. deftest does not have arguments like defn or defmacro. These were harmless. The only strange behavior they caused was to evaluate an empty vector for those tests, and then go on to the tests in the deftest. However, it does seem best to remove them.
+ Several misplaced doc strings. + Several deftest names that were identical in the same namespace, causing the earlier one's tests never to be run. + Some missing (is ...) wrappers around unit tests (caught by linter because the first one's return value was discarded).
determine if we have a real answer - unit, choice, or mzero. add test cases illustrating membero and a negated membero.
performance. Instead revert `membero` and provide a new goal `member1o` that uses disequality.
…at depends upon what is considered a flaw in the previous version. Before: (run* [q] (membero q [1 1 1])) ;; => '(1 1 1) After: (run* [q] (membero q [1 1 1])) ;; => '(1)
nested feature map. The recursive `featurec` support was a bit naive. `unify-with-pmap*` nows handles the various cases properly.
unnecessary calls to `get-dom` while retaining the flexibility to call `-runnable?`, `-entailed?`, and constraint invocation in whatever order we please. refactor protocols to use ClojureScript style naming convention - this is prep for eventual unification of the two code bases.
Signed-off-by: amin <email@example.com>
fd/in expression come last because of a bug in domc.
a var has no domain. simplify.