I figured before I added a ticket, I'd post here.  I was using the functions
for Futures in Clojure and found for all of the future functions (like
future, future-done?, future-cancel etc) it was nicely abstracted and there
was no need to know exactly what kind of object was passed into or returned
from the functions.  When it become a problem, is when I wanted to get the
value returned by the future with a timeout.  To do this, I needed to know
that the future function returned an implementation of
java.util.concurrent.Future, and that interface had a get method that
accepts a timeout value.  I was then able to make a Java call to get the
future value with a timeout.

Improvements/Questions:

1 - I think a good improvement would be updating the docs for the future
related functions to indicate what kind of objects are passed in and
returned.  Users would then not have to go through the source to see what's
being returned.  This could also be useful to know if users were getting
java.util.concurrent.Future instances from other places and wanted to use
them with the Clojure API.

2 - Is there a reason that get with a timeout from
java.util.concurrent.Future is not included in the Clojure future
functions?  It seems to be the only one missing and having that function
would make the details around what kind of object is returned/passed in by
these functions less important.  Maybe future-await or something?  What sort
of time parameter would this new function would accept?  The
java.util.concurrent.Future.get method uses an int and the
java.util.concurrent.TimeUnit enum.

Should I log a ticket on these items?

Thanks,

Ryan

-- 
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

Reply via email to