Fork me on GitHub
#core-async
<
2017-08-23
>
isaac02:08:21

Elapsed very long time for (require '[clojure.core.async]). For my machine(Mac Pro, 16G mem), it’s need 3+ seconds

ghadi02:08:23

lots of code to compile

ghadi02:08:18

namely, its dependency clojure.tools.analyzer.jvm. most of a whole compiler, written in clojure

isaac02:08:30

yeah, the (require '[clojure.tools.analyzer.jvm]) elapsed 2+ seconds.

isaac02:08:32

that increase the bootstrap time of Clojure app.

tatut11:08:25

I’m getting a weird error

(require ‘[clojure.core.async :as async])
CompilerException java.lang.Exception: No namespace: clojure.core.memoize, compiling:(clojure/tools/analyzer/jvm/utils.clj:1:1) 

tatut11:08:36

with latest core.async as dependency in project.clj

tatut12:08:00

nvm, it seems an old clj-webdriver included a previous version of core.cache which caused the problem

sashton17:08:36

am i missing an obvious solution? is there a generic way to adapt a sequence-returning function to a transducer function which injects each item onto the rf? example transducer:

(comp (map :string-property)
      (map clojure.string/split-lines)
      (filter some-pred))
In this example, the second step will split the lines, but it will pass the entire sequence as one chunk to the filter step, rather than individual items. I feel like I am missing something obvious.

sashton17:08:19

thanks @alexmiller. i knew I was forgetting something