
Compiling ClojureScript Projects Without the JVM - ghosthamlet
https://anmonteiro.com/2017/02/compiling-clojurescript-projects-without-the-jvm/
======
flavio81
TL;DR:

1\. Lumo runs ClojureScript without the need for a JVM. It relies on Node.js
and Google V8.

2\. ClojureScript compiler is self-hosted, thus:

3\. Now you can compile ClojureScript without the need for a JVM. As a bonus,
enjoy shorter start-up times.

~~~
ambulancechaser
I think the article was saying that the javascript version of the google
closure library is slower than the jvm based version so this would actually be
a little bit slower.

Further, it has a serious restriction in that the version of cljs used by lumo
itself is now the version of cljs that your project must use.

The cljs version is a pretty serious caveat but this seems like a really nice
milestone on quite a bit of work. kudos to anmonteiro

------
divs1210
I love this! Cljs has seen some huge leaps recently! I hope the momentum keeps
building. Expo + Clojurescript is the stuff of dreams!

~~~
sova
Expo? I'm very intrigued... please tell me more :)

~~~
ledgerdev
I'm guessing this is the expo mentioned. [https://expo.io/](https://expo.io/)
[https://docs.expo.io/versions/latest/guides/using-
clojurescr...](https://docs.expo.io/versions/latest/guides/using-
clojurescript.html)

~~~
divs1210
Indeed!

~~~
sova
Uh.Mazing. Hey, do you know offhand if there is an easy way to move things
into the App Store, having made them with Expo? This is so cool! :D

------
jiyinyiyong
Also, you can "compile ClojureScript without configuring JVM" with
[https://github.com/thheller/shadow-cljs](https://github.com/thheller/shadow-
cljs)

------
chrisseaton
ClojureScript compiles to JavaScript doesn't it? And isn't ClojureScript
written in ClojureScript? So why would you need a JVM in the first place? What
is new?

~~~
evilduck
Google Closure Compiler being available to JS is relatively new. That was
previously a JVM only ability.

~~~
chrisseaton
Why do you need Closure though? If ClojureScript's compiler compiles to JS,
why do you need Closure? You already have JS code and can already run it.

~~~
oneweekwonder
As mentioned cljs needs the google closure tools, basicly for Libraries,
Dependency management and Aggressive code minification. Clojurescript has a
short about[0] on their website.

[0]:
[https://clojurescript.org/about/closure](https://clojurescript.org/about/closure)

------
namelos
So could we make a Webpack loader form this?

