 ;; use map or pmap.
 (def ^:const mapfn map)
 
-(def ^:const exception-on-unify-fail
-  false)
+(def ^:const handle-unify-fail #(log/debug %))
+(def ^:const throw-exception-on-unify-fail false)
 
 ;; deterministic generation:
 ;;(def ^:const shufflefn (fn [x] x))


(defn unify-and-log [a b model]
  (let [result (unify a b)]
    (log-unification-result a b result model)
    result))

(defn comp-path-to-complements

                    (string/join "," (map :rule result))
                    " for: " (spec-info spec))))
    result))
