On Tue, Dec 30, 2014 at 5:38 PM, Thomas Heller <[email protected]> wrote: > I believe most of it is due to the fact that everything has to go through > cljs.closure/build. Since everything build related is hidden behind that > function, CLJS has to do quite a lot instead of just worrying about compiling > CLJS->JS. Recently a cljs.build.api namespace was added to allow querying the > internal state, but it is still impossible to hook into the actual build > process which you simply need for some features. Which is why I decided to > not use cljs.closure at all.
I don't see how this is true in general. The Node.js REPL hooks into the functions that cljs.closure/build uses without going through it. > There is a definite need for multiple build tools since build targets > sometimes differ significantly (Node.JS vs Browser). Yet cljs.closure is > sprinkled with a bit of everything, trying to do everything. I fear that this > will hurt in the long run. I already see several things "bleeding" into other > namespaces cause of decisions made there (eg. the reliance on files). Supporting both Node.js and the Browser has been a goal since the initial release. There's nothing new going on here except more & better. As to the reliance on files this is directly result of the desire to improve start time performance of REPLs and cold builds. I don't see any better solutions when performance and sharing analysis information across runs/processes is the goal. > I believe it would be beneficial to split up cljs.closure/build but I'm not > even sure about that since technically certain targets (Node.JS) don't even > need the whole Closure Compiler at all. I think it would better to invest in cljs.build.api. > I'm not sure there is a problem at all since so far I was able to do anything > I wanted in shadow-build without too much hassle. Just feels off seeing > basically duplicate work by either David or me. Agreed that I would rather see people put shareable work into ClojureScript itself. > Should we try to refactor the build process overall? Or am I imagining things? Refactoring means needless churn. At this point it's preferable to do things incrementally behind feature flags. Again I also don't see why much of this work can't be done via patches to cljs.build.api. David -- Note that posts from new members are moderated - please be patient with your first post. --- You received this message because you are subscribed to the Google Groups "ClojureScript" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. Visit this group at http://groups.google.com/group/clojurescript.
