I have seen many Clojure programmers enthusiastic about the new core.async library and, though it seems very interesting, I am having a hard time seeing how it conforms to Cloju
it's somewhat the other way around, Core.async can only be used in systems where Immutability is the norm. So Clojure's principles enable core.async rather than the inverse.
This is a limitation, happens in other place in clojure as well, the limitation of anonymous functions not composing with the %
symbol seems to at least present the same idea. Not that finding another case of a limitation makes it better of course.
I have not seen this my self, though this would be a step backwards if you where attempting to take code that is simple, and clean when expressed in one way and then express it in a way that is ... not that way...