Congratulation. I am getting one problem for defmacro spec with defmethod.
Here it is
(defmulti mycomp (fn [v] v))
(defmacro defcomp [m]
`(defmethod mycomp ~m
[_]
~m
)
)
(defcomp :test) ;; Throwing exception
;; Expand macro
(defmethod mycomp :test [_] :test)
;; it is working
Here is error details
Call to clojure.core/fn did not conform to spec: In: [0 0] val:
(com.mxsys.psql.component/_) fails spec:
:clojure.core.specs.alpha/arg-list
at: [:args :bs :arity-1 :args] predicate: (cat :args (*
:clojure.core.specs.alpha/binding-form) :varargs (? (cat :amp #{(quote
&)}
:form :clojure.core.specs.alpha/binding-form))), Extra input In: [0 0]
val:
com.mxsys.psql.component/_ fails spec:
:clojure.core.specs.alpha/arg-list at:
[:args :bs :arity-n :args] predicate: vector?
Br,
Mamun
On Friday, December 8, 2017 at 8:35:39 PM UTC+1, Alex Miller wrote:
>
> Clojure 1.9 is now available!
>
>
> Clojure 1.9 introduces two major new features: integration with spec and
> command line tools.
>
>
> spec (rationale <https://clojure.org/about/spec>, guide
> <https://clojure.org/guides/spec>) is a library for describing the
> structure of data and functions with support for:
>
> - Validation
> - Error reporting
> - Destructuring
> - Instrumentation
> - Test-data generation
> - Generative test generation
> - Documentation
>
> Clojure integrates spec via two new libraries (still in alpha):
>
> - spec.alpha <https://github.com/clojure/spec.alpha> - spec
> implementation
> - core.specs.alpha <https://github.com/clojure/core.specs.alpha> -
> specifications for Clojure itself
>
> This modularization facilitates refinement of spec separate from the
> Clojure release cycle.
>
> The command line tools (guide <https://clojure.org/guides/deps_and_cli>,
> reference <https://clojure.org/reference/deps_and_cli>) provide:
>
> - Quick and easy install
> - Clojure REPL and runner
> - Use of Maven and local dependencies
> - A functional API for classpath management (tools.deps.alpha
> <https://github.com/clojure/tools.deps.alpha>)
>
> The installer is available for Mac developers in brew, for Linux users in
> a script, and for more platforms in the future.
>
> For more information, see the complete list
> <https://github.com/clojure/clojure/blob/master/changes.md> of all
> changes in Clojure 1.9 for more details.
>
>
> *Contributors*
>
>
> Thanks to all of the community members who contributed to Clojure 1.9
> (first time contributors in bold):
>
>
> - *Adam Clements*
> - Andy Fingerhut
> - Brandon Bloom
> - *Cameron Desautels*
> - *Chad Taylor*
> - Chris Houser
> - *David Bürgin*
> - *Eli Lindsey*
> - *Gerrit Jansen Van Vuuren*
> - Ghadi Shayban
> - *Greg Leppert*
> - *Jason Whitlark*
> - *Johan Mena*
> - Jozef Wagner
> - *Lee Yen-Chin*
> - *Matthew Boston*
> - Michael Blume
> - Michał Marczyk
> - Nicola Mometto
> - *Ruslan Al-Fakikh*
> - *Steffen Dienst*
> - Steve Miner
> - *Yegor Timoshenko*
> - *Zhuang XiaoDan*
>
>
--
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to [email protected]
Note that posts from new members are moderated - please be patient with your
first post.
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
---
You received this message because you are subscribed to the Google Groups
"Clojure" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/d/optout.