You can use the following;
(defn frm-save
"Save a clojure form to file."
[#^java.io.File file form]
(with-open [w (java.io.FileWriter. file)]
(binding [*out* w *print-dup* true] (prn frm))))
(defn frm-load
"Load a clojure form from file."
[#^java.io.File file]
(with-open [r (java.io.PushbackReader.
(java.io.FileReader. file))]
(let [rec (read r)]
rec)))
Have a look at clojure.core_print.clj in the clojure source for details on print-dup.
Rgds, Adrian.