Fork me on GitHub
#shadow-cljs
<
2017-09-29
>
Jon05:09:15

did you mean "faster"?

Jon10:09:18

diffs too huge, but should this line be removed?

Jon10:09:37

Sep 29, 2017 5:51:17 PM clojure.tools.logging$eval334$fn__337 invoke
WARNING: build-update: [[:shadow.build.classpath/resource "respo_ui/comp/home.cljs"] [:shadow.build.classpath/resource "respo_ui/comp/widgets_page.cljs"]]
[:browser] Compiling ...
[:browser] Build completed. (172 files, 3 compiled, 0 warnings, 0.16s)

Jon10:09:44

the logs I saw..

thheller10:09:12

right, that should be a debug log. fixed.

thheller11:09:32

react+react-dom v15 is 49.8 kb gzipped when using the “offical” bundle

thheller11:09:51

47.8 KB when bundled by shadow-cljs .. I think thats a solid result 🙂

thheller11:09:09

better than expected

thheller11:09:46

need to compare to webpack still but I’m happy with the result

Jon12:09:17

Closure Compiler is great, although I don't like it 🙃

thheller12:09:10

the imported JS deps only use :simple so its pretty much the same uglifyjs would do

thheller12:09:21

without the need to shell out to a node process

thheller12:09:49

I like the Closure Compiler a lot 😉

Jon12:09:21

well, to me, it's Java, and it's in Google rather than in the community

thheller13:09:25

true, still open source though. the “community” is just small and inside google since not many people outside use it.

thheller13:09:15

AFAICT the CLJS compiler is still pretty much the only compile-to-JS language to embrace it

Jon13:09:41

I asked BuckleScript's author, he said it might be bad idea part of the compiler is not controlled by ClojureScript community itself.

Jon13:09:24

I see that like when you are using the core of cljs compiler, David got different ideas from yours.

Jon13:09:48

somehow immutable data is like a library to BuckleScript and it does not worry about the cost of immutable data, feeling strange. while in cljs it's a big thing.

Jon13:09:04

I just imagine, maybe when we get rid of closure compiler, then we may possible to do things we didn't notice before. like self-hosted cljs by removing dependency of Java.

Jon14:09:02

back in 2014 when I was joined a company, they were using Closure Compiler at first, but as we tried to setup the toolchains of compiling the whole project including lots of Gulpfile, Require.js , Closure Compiler does don't work with it. it was not in the ecosystem, even though it was great, we just couldn't make use of it with JavaScript skills.

thheller14:09:09

well Closure Compiler is only about the FINAL stage of a build, only the optimizing part. just like shadow-cljs watch doesn’t use it at all you only need it when you want to optimize.

thheller14:09:31

CLJS runs just fine without it

thheller14:09:05

but … Closure already has pretty good ES6 support

thheller14:09:17

so if you write your code in ES6 chances are pretty good that it will just work

thheller14:09:29

its the non-ES6 part thats tricky

thheller14:09:54

but once people start adopting ES6 more and more it will get easier to use the Closure Compiler for the final step

Jon14:09:44

much better at this moment since it has CommonJS and ES6 support 😄

Jon14:09:40

by the way do you feel like suppressing the logs even more?

Jon14:09:21

I mean, when I run shadow-cljs watch app, it's too much logs... not a big deal though, but I made some changes to my cumulo-editor, print some of the logs in grey, removed some logs, colorized some important one's. It quite much different as it looks.

thheller14:09:11

yeah it logs too much, I want to reduce it down the essentials

thheller14:09:18

just didn’t get to it yet

thheller14:09:33

I still have this plan of building an actual UI for this so it isn’t all based on streaming a bunch of characters somewhere

thheller14:09:00

step by step 😉

Jon14:09:53

I almost forgot you have some plan for UI...

shaunlebron21:09:34

@jiyinyiyong to answer your earlier question. I use shadow-cljs cljs-repl <build-id>. it’s a browser connected repl you can run alongside watch.