Comment made by: alexmiller
For the time being, we are still supporting Clojure 1.6 with core.async so this is not an option. At some point, that will change, not sure when.
Another aspect here is that reader conditionals are designed for code that is very similar across platforms but the code for clj and cljs is substantially different in many cases, so it is not an obvious candidate. Rather, I would expect to see alternate versions of the same namespace in many cases.
Changing namespaces would also of course break existing users, so we would need to plan ahead for this change.
While I think there is an endpoint with more consolidated code base (and a better build system, which I have been working on), I do not think it's wise for anyone outside the core team to work on it.