This page is not created by, affiliated with, or supported by Slack Technologies, Inc.


I have been asked the (provokative) question: why do Cljs even use Google Clojure Compiler for Node if it is explicitely stated that optimization :advanced is not necessary? I did not have an answer for that so I figured I could ask you folks here :grinning:


@richiardiandrea advanced optimizations are not only about filesize. In many cases it also has an impact on memory usage & overall speed


@martinklepsch I am trying to defend myself against Reason/BuckleScript and it is tough, the js code it generates is very readable and clear, almost hand-taylored: > In BuckleScript, a Hello world program generates 20 bytes JS code They use GCP as well there. Anyways thanks for the clarification!


@richiardiandrea hah, also dipping my toes in there lately but quickly ran into some tooling issues… > In BuckleScript, a Hello world program generates 20 bytes JS code Is it not the same for CLJS?


it's not only the same for CLJS because the printing stuff can't be dead code eliminated once you enable-console-print!, AFAICT


so it ends up being like 90KB


but that's not a very good benchmark anyway IMHO


Surely it is not a good benchmark


Also another objection that I hear is that the output of Cljs is not readable: I guess I have also thought about this as "it is a compiler, I don't care what it spits out as long as I can debug it" Probably the JS world is more used to the notion of step by step and I am trying to say that in Clojure you don't need that.


martinklepsch: do you remember the tooling issue you had, I am probably going to face the same I guess. So far it's been difficult to find things but once found they work.


Oh nother thing to say is that I had to contribute the repl integration in emacs


I think it came down to using yarn instead of npm. Yarn isn’t supported.


Oh ok, now I guess it is, at least for the few things I have started


@richiardiandrea really? I got the info that yarn isn’t supported like less than 48hrs ago


Uhm...Maybe it depends on what you do


I will try again, I basically started something more concrete yesterday afternoon


In any case I gathered you should use opam mostly


(talking about ReasonML)