Daniel Silén <nimbus...@gmail.com> writes: > If I rebind a var's value it receives the new value - but it shouldn't, > because it is in another thread, right?!
Clojure 1.3 introduced a feature known as "binding conveyance," which causes the functions passed in for futures and agent actions to be wrapped so as to capture the active thread local binding frame at instantiation. You can achieve a similar effect yourself (although the mechanism differs) by using the `bound-fn` macro or wrapping an existing function with `bound-fn*`. I believe the idea was to make the behavior of dynamic vars in these contexts less surprising / more useful, but YMMV. -Marshall -- 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