With respect, this topic in particular has been beaten to death. I too liked Clojure when I tried it some years ago (agreed on the composition and data structures; both are _great_). But the real value-add is in the runtime, not the syntax. Java has a solid runtime but it's not yet as good as Erlang's, maybe even not up to the standards of Golang -- I am talking concurrency / parallelism here (for memory management I…
Not even to optimize for, but to write correct programs you really need to understand the runtime which is usually broader than the syntax. All Clojure (lisps) do is remove the stupidity of syntax. Even if syntax is the minor thing, why wear a stupid, uncomfortable shirt while running when you could wear one so comfortable you scarcely feel it?
And I agree that most LISPs remove the stupidity of syntax. Very true.