

ClojureScript development environment with Vim - astashov
http://astashov.github.io/blog/2014/07/30/perfect-clojurescript-development-environment-with-vim/

======
daniel_solano
Pretty neat. Figwheel is pretty new to me, so it's something I'll have to look
into.

I just recently got my head around using ClojureScript with vim-fireplace and
Austin. It took a bit of work, but I finally got to a point where I easily
have a browser REPL running using an environment stored in a var. This helps
avoid security error, but it's not as simple a setup.

I suppose one big difference is the HTML I am using is being served via a
Ring-based server rather than using a separate serving process. This allows me
to add middleware in development mode that will inject the necessary
JavaScript to connect to the browser REPL.

------
pselbert
It is great to hear success stories for the Clojure/ClojureScript workflow. I
really respect the work behind LightTable and understand the natural lisp
support of Emacs, but I have a lot of time and neurons baked into using Vim.

Most of my dev time is spent with JavaScript lately, I'm really curious what
live reloading is like.

------
krat0sprakhar
I'm learning OCaml now and this blog post really makes me wish if tooling
around js_of_ocaml[0] were this great! Thanks for the detailed write up!
Bookmarked for when I start clojure!

[0] - [http://ocsigen.org/js_of_ocaml/](http://ocsigen.org/js_of_ocaml/)

~~~
derengel
As this blog post shows (the author spend a lot of time working on this
setup), the UX for starting with ClojureScript is pretty horrible, to much
incidental complexity.

I hear the maintainers of Cljs are going work on it but its not a priority.

~~~
swannodette
I don't see how you can get much simpler than this
[http://swannodette.github.io/2013/10/27/the-essence-of-
cloju...](http://swannodette.github.io/2013/10/27/the-essence-of-
clojurescript/) for any compile to JavaScript language. Fundamental UX is
definitely a priority - this is why fast incremental compilation and source
map support exists.

~~~
daniel_solano
I don't think it's so much that it's hard to get a productive working
environment. In my experience, getting vim-fireplace working with a new
Leiningen project takes nearly zero effort. Moreover, I get all sorts of nice
functionality (easy evaluation of expressions, sourc/doc lookup, etc.).
Getting all of these features with ClojureScript takes quite a bit more
effort, especially connecting it all to a browser REPL. At least, this has
been my experience.

------
Rapzid
I would highly recommend anyone starting Clojure or ClojureScript give
LightTable a spin. I find it's workflow generally fantastic. Connecting it to
the browser is a snap too. You'll be up and running in 4 minutes, don't even
need to download/install clojure; it does it for you!

------
yayitswei
Figwheel is not widely known, but I've used it for several months and find the
workflow very convenient.

------
lynndylanhurley
Wow this is great!!! This is exactly the guide that I've been looking for.
Thanks!!!

------
tony_landis
Thanks Astashov for the very comprehensive guide.

