Author here. Happy to answer any questions/concerns.
edit: WebFUI[1] is one clojurescript project trying to provide a pure interface for dom manipulation; there are others.
We use standard manipulation.
As a general rule, mutable API's tend to outperform immutable ones.
Seems to be pretty mature, there are apps in App Store written in it, and there are companies, using it for their front-end (i.e. Prismatic :)).
> Does the compiler eliminate unused code from the final output?
That's done by Google Closure Compiler in advanced mode.
EDIT: The guy who did NightWeb talks about Clojure on Android here: http://nightweb.net/blog/clojure-on-android.html
Not true.
(def $ js/jQuery)
(.append ($ "body") "hello world")
The reasons you'd use Dommy over jQuery are outlined in the original post. (def $ js/jQuery)
(.each ($ "body") (fn [idx, val]
(.write js/document "In a lambda")))
The Google Closure Compiler munges names of functions so that any function declared in ClojureScript cannot be called from jQuery which means that no jQuery function that takes a callback can be used. And you really want to use GCC because without its dead code removal a simple helloworld.js file takes more than 700kb.