clojure.spec & protocol fn

2016-06-05 Thread Claudius Nicolae
It seems that protocol fns don't participate in s/fdef specfications. It would be nice they were. Sample: (ns sample (:require [clojure.spec :as s])) (s/instrument-all) ;; Spec a fn (s/fdef f :args (s/cat :i integer?) :ret integer?) (defn

Re: Variadic run!

2016-05-29 Thread Claudius Nicolae
Yes, I go by `(dorun (map ...` currently . I was reading [1] and got the impression that run! is to be preferred, but it seems it's not a full replacement. [1] https://stuartsierra.com/2015/08/25/clojure-donts-lazy-effects -- You received this message because you are subscribed to the Google Gr

Variadic run!

2016-05-29 Thread Claudius Nicolae
run! can eagerly map a function over a coll. I think it would be nice to support multiple collections, making it an eager version of map. My particular use case is running a test over two colls. (defn check [m1 m2] (is (almost= (:x m1) (:x m2))) (is (= (:y m1) (:y m2 (run

Core async pipeline should return "to" channel.

2015-04-17 Thread Claudius Nicolae
Since issue tracker for core.async is disabled on github, I'll spill this here. I think "pipeline" should return the "to" channel, to make it threading-friendly: (->> (range 100) (a/to-chan) (a/pipeline 10 (a/chan) (map inc)) (a/pipeline 2 (a/chan) (filter odd?))) Currently