Some Noobian critique:

Thread-local bindings also allow us to monkey-patch for the span of a local
> context. Say we have a function *cat* which calls a function stored in a
> Var; if a function *goat* is root-bound to the Var, then *cat* will
> normally call *goat*; however, if we call *cat* in a scope where we have
> thread-locally bound a function *moose* to that Var, then *cat* will
> invoke *moose* instead of *goat*. (The key idea here is that the function
> call is bound to a Var, not directly to a function, so the actual function
> called is up for grabs every time the call is executed.)


 You lost me at "span of a local context."

I pretty much understand what you're saying, since I've been playing around
with clojure for a while and "thread-local bindings" is somewhat
self-explanatory, if a little bit cryptic.

Basically, a var is a container.  Different threads can have vars
(containers) of the same name but with different values (contents).  If a
var is called but not found in a thread, clojure will search the global/root
bindings/namespace.

Is that accurate?

--~--~---------~--~----~------------~-------~--~----~
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
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/clojure?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to