The main problem is that Clojure REPL uses print-method, not .toString. You must specify print-methodfor your type. This is a bit annoying to reified types as it makes them kind of verbose. You will need to do something like this:
(defn reify-str []
(let [f "foo"
r (reify Object
(ToString [this] f))]
(defmethod clojure.core/print-method (type r) [this writer]
(print-simple f writer))
r))
(I only tested this in vanilla Clojure, but I think it is the same in ClojureCLR.)
, reifying, . ( , - , , ... , , .)