Last active

Embed URL


SSH clone URL

You can clone with HTTPS or SSH.

Download Gist

A simple script to demonstrate the unfortunate importance of goal ordering in `core.logic`.

View goal-ordering-failure.clj
1 2 3 4 5 6 7 8 9
(use `clojure.core.logic)
;; Runs quickly. Prints (1 2,3).
(clojure.pprint/pprint (run* [q] (fresh [x] (== x [1,2,3])
(membero q x))))
;; Hangs
(clojure.pprint/pprint (run* [q] (fresh [x] (membero q x)
(== x [1,2,3]))))
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Something went wrong with that request. Please try again.