Fork me on GitHub
#clojure-dev
<
2017-11-02
>
thheller07:11:25

@alexmiller I’m looking into using the clojure script from shadow-cljs. It currently does basically all the same stuff using cemerick/pomegranate. Currently it would need to use clojure -Spath and then inject one more source path where it can put the AOT classes + adding the -Dclojure.compile.path prop. Is that maybe something the tool could do itself via a flag?

Alex Miller (Clojure team)12:11:27

You can handle the source path in :paths (or in a -C alias with :extra-paths)

Alex Miller (Clojure team)12:11:19

You can use -J-Dclojure.compile.path=... to cover that

Alex Miller (Clojure team)12:11:11

Maybe we could handle the extra paths with a new cli option if you’re looking to avoid touching the deps.edn

thheller17:11:57

yes, trying to avoid touching the deps.edn. don’t want to get into a situation where the user has to add certain boilerplate just to make it work, don’t want to add it automatically since that destroys user formatting (keeping it is rather hard).

Alex Miller (Clojure team)21:11:02

we used to have something similar to this for make-classpath classpath-overrides but removed it.

Alex Miller (Clojure team)21:11:35

some other options would be a) append the extra path to the output b) use tools.deps.alpha directly rather than via the script

bronsa09:11:16

@tristefigure imagine

(foo `(some expr))
where foo is a macro

bronsa09:11:49

prior to change, foo would receive (clojure.core/seq (clojure.core/concat (clojure.core/list (quote clojure.core/some)) (clojure.core/list (quote user/expr)))) as its argument

bronsa09:11:14

after the change you propose, foo would receive (syntax-quote clojure.core/some user/expr)

bronsa09:11:28

not hard to imagine a macro that would behave differently