Burt 在 Clojure 邮件列表上报告了此问题
使用“1.9.0-alpha10”和 core.logic “0.8.10”
(ns lwb.nd.rules
(:refer-clojure :exclude [==])
(:require [clojure.core.logic :refer :all]))
=> nil
使用“1.9.0-alpha12”和 core.logic “0.8.10”
(ns lwb.nd.rules
(:refer-clojure :exclude [==])
(:require [clojure.core.logic :refer :all]))
CompilerException clojure.lang.ExceptionInfo:对 clojure.core/fn 的调用不符合 spec
在:[0] val:clojure.core.logic/-inc 违反 spec::clojure.core.specs/arg-list 在:[:args :bs :arity-1 :args] 断言:vector?
在:[0] val:clojure.core.logic/-inc 违反 spec::clojure.core.specs/args+body 在:[:args :bs :arity-n] 断言:(cat :args :clojure.core.specs/arg-list :prepost (? map?) :body (* any?))
:clojure.spec/args (clojure.core.logic/-inc [] (bind (this) g))
#:clojure.spec{:problems ({:path [:args :bs :arity-1 :args], :pred vector?, :val clojure.core.logic/-inc, :via [:clojure.core.specs/args+body :clojure.core.specs/arg-list :clojure.core.specs/arg-list], :in [0]} {:path [:args :bs :arity-n], :pred (cat :args :clojure.core.specs/arg-list :prepost (? map?) :body (* any?)), :val clojure.core.logic/-inc, :via [:clojure.core.specs/args+body :clojure.core.specs/args+body], :in [0]}), :args (clojure.core.logic/-inc [] (bind (this) g))}, 编译:(clojure/core/logic.clj:1130:5)