Is it possible / is support planned to add docstrings to clojure.spec specs?

2016-06-01 Thread Russell
Just been trying out clojure.spec for the first time, looks really nice. It would be good to be able to do something like the following: (clojure.spec/def "The name of the stage, which API Gateway uses as the first path segment in the invoke Uniform Resource Identifier (URI)." :aws.apigatewa

Re: [ClojureScript] Re: ANN: ClojureScript 1.9.14, clojure.spec port

2016-06-01 Thread David Nolen
Choosing cljs.spec over clojure.spec is out of necessity not preference - Clojure has already taken the namespace and that namespace defines macros. We are considering aliasing support for cljs.spec. That is rewriting clojure.spec vars in ClojureScript sources to cljs.spec but it will likely cover

Re: [ClojureScript] Re: ANN: ClojureScript 1.9.14, clojure.spec port

2016-06-01 Thread Daniel Compton
Would it be good to change the namespace for spec from cljs.spec to clojure.spec? This will make CLJC files nicer to write as you won’t need to have reader conditionals for requiring cljs.spec in CLJS and clojure.spec in CLJ. It seems like spec is going to be used by lots of projects, so the choic

Re: [ANN] Clojure 1.9.0-alpha4

2016-06-01 Thread Frank Castellucci
How was this accomplished? On Wednesday, June 1, 2016 at 10:17:14 AM UTC-4, Rich Hickey wrote: > > To give people an idea of the update-in and seq destructuring > improvements: > > (let [d3 {:a {:b {:c 2}}}] > (dotimes [_ 10] > (time (dotimes [_ 1000] > (update-in d3 [:

Re: Access user created Java package from Clojure

2016-06-01 Thread Gary Verhaegen
As long as you're working purely in Clojure, Leiningen mostly protects you from having to know about the JVM and its infamous classpath. But when you're trying to interoperate with Java code, you need to know a few things. So, here's the very minimum I think you need to know to understand what is

Re: ANN: ClojureScript 1.9.14, clojure.spec port

2016-06-01 Thread Walter van der Laan
It's like magic. I added some specs to cljc namespaces and it just works! I'm making domain specific error messages with just a few lines of code. This is a huge leap forward. Thank you, and all involved, so much. -- You received this message because you are subscribed to the Google Groups "Cl

Re: Clojurescript macros evaluate?

2016-06-01 Thread hiskennyness
On Wednesday, June 1, 2016 at 4:25:31 PM UTC-4, David Nolen wrote: > > Nothing to do with macros, that wouldn't work in Clojure either, the > problem is only the namespaced keyword - ::tiltontec.qxia.base/m.Composite > > Note the leading double colon, :: > > The :: indicates that tiltontec.qxia.

Re: Clojurescript macros evaluate?

2016-06-01 Thread David Nolen
Nothing to do with macros, that wouldn't work in Clojure either, the problem is only the namespaced keyword - ::tiltontec.qxia.base/m.Composite Note the leading double colon, :: The :: indicates that tiltontec.qxia.base is an ns alias, which clearly it's not since it's the fully qualified name. J

Clojurescript macros evaluate?

2016-06-01 Thread hiskennyness
Am I right that the following reflects a difference in Clojure macros from Common Lisp macros, and if so, am I missing a workaround? The context is my trying to create a cljs wrapper for the qooxdoo js library, leveraging my model/cell dataflow framework written in all cljc. It is going well an

ANN: ClojureScript 1.9.14, clojure.spec port

2016-06-01 Thread David Nolen
ClojureScript, the Clojure compiler that emits JavaScript source code. README and source code: https://github.com/clojure/clojurescript Leiningen dependency information: [org.clojure/clojurescript "1.9.14"] This release includes a complete and faithful port of clojure.spec to ClojureScript.

Re: [ANN] Clojure 1.9.0-alpha4

2016-06-01 Thread Isaac Zeng
That really cool On Wednesday, June 1, 2016 at 10:17:14 PM UTC+8, Rich Hickey wrote: > > To give people an idea of the update-in and seq destructuring > improvements: > > (let [d3 {:a {:b {:c 2}}}] > (dotimes [_ 10] > (time (dotimes [_ 1000] > (update-in d3 [:a :b :c] in

Re: clojure.spec generation question

2016-06-01 Thread Jeroen van Dijk
Thank you Rich! Op di 31 mei 2016 om 19:12 schreef Rich Hickey : > You are not labeling your preds, so ::not-predicate is taken as the label > for ::and-predicate etc. > > Also, tuples are not labeled: > > (require '[clojure.spec :as s]) > (require '[clojure.spec.gen :as gen]) > > (s/def ::atom s

Re: [ANN] Clojure 1.9.0-alpha4

2016-06-01 Thread Rich Hickey
To give people an idea of the update-in and seq destructuring improvements: (let [d3 {:a {:b {:c 2}}}] (dotimes [_ 10] (time (dotimes [_ 1000] (update-in d3 [:a :b :c] inc) ;;; 1.9 alpha3 ;; user=> "Elapsed time: 6489.189065 msecs" "Elapsed time: 6501

Re: Argument order rules of thumb

2016-06-01 Thread Shark Xu
Also can we consider that put some special argument in some special position. The main problem data, which often be the criteria of function dispatch, similar to OO's method target object, can as first parameter or after the missing process parameter? So we can have a consistent parameter order

Re: Argument order rules of thumb

2016-06-01 Thread Shark Xu
I think the tradition is more general: abstract process which need missing process passed in(seems all high order functions under this category) should have missing process comes first as it's parameter. This tradition not only limited to sequence parameter. 在 2008年4月17日星期四 UTC+8下午10:07:21,Rich