The print-method for IDerefs by default dereferences anything to be
printed. Right now it has a special type check for futures but not for
promises. It makes promises nearly impossible to debug or to use from
the REPL. The current implementation of promises uses reify rather
than deftype, so there is currently no type or tag by which to
discriminate. As a solution, I factored the reify out into a deftype:

http://gist.github.com/339834

Unfortunately, the Promise deftype is no longer intercepted by the
print-method for IDerefs. I guess it has to do with the deftype
hierarchy vs Java hierarchy. Maybe someone more familiar with deftype
can figure this one out. For now, what I have is good enough to get on
with my immediate coding.

-Per

-- 
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to clojure@googlegroups.com
Note that posts from new members are moderated - please be patient with your 
first post.
To unsubscribe from this group, send email to
clojure+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en

To unsubscribe from this group, send email to 
clojure+unsubscribegooglegroups.com or reply to this email with the words 
"REMOVE ME" as the subject.

Reply via email to