;; passing a collection cannot mutate the caller's value (defn add-item [coll x] (conj coll x)) (def mine [1 2]) (add-item mine 99) ;; mine is untouched: there is no shared mutable state (println mine)
a callee cannot mutate your value