Just reporting an error I've come across while using Spec 2 of SHA "b29ae46".
(s/def ::special-name
(s/and string? #(clojure.string/starts-with? % "Special")))
(s/def ::schema-1 (s/schema [::special-name]))
(s/valid? ::schema-1 {::special-name "Special Person"})
;;=> true
(s/def ::name ::special-name)
(s/def ::schema-2 (s/schema [::name]))
(s/valid? ::schema-2 {::name "Special Person"})
Execution error (IllegalArgumentException) at clojure.alpha.spec.protocols/eval5664$fn$G (protocols.clj:11).
No implementation of method: :conform* of protocol: #'clojure.alpha.spec.protocols/Spec found for class: clojure.lang.Keyword