I believe immutable values are a result of programming style. A person can choose to use Clojure's Vars, Refs, Agents, and Atoms [1] even though Clojure tends to encourage a functional programming style. Clojure inherits the functional programming tradition from the larger Lisp family (as does Racket).
That said, Rich Hickey has a great of describing how to avoid unnecessary mutation - usually you want the next value so just make a new one rather than changing the existing one.
Please go read up on modern scheme. particularly racket lang.
In many respects, Clojure is Racket, but on the JVM rather than native.
Racket has one of the most thoughtful, opininonated, and caring core dev groups of any language, bar none. Any implication otherwise comes from ignorance. :)