Hi,

Am 19.07.2010 um 23:01 schrieb Mark Rathwell:

> Notice, the removed function in foo1 still exists, because it was not 
> overwritten by anything.

This is true if the function name is not used in anything the namespace refers 
to. Take eg. my first example with prn. There the reload overwrites the 
previous Var (ie. the Var is removed from the namespace) by the 
clojure.core/prn function. If the function was still there it would again 
overwrite the c.c/prn. This is the new last-var-wins behaviour. (which I 
generally like, but which also didn't bite me up to now besides this example)

>  Also, notice that we specified :reload-all for foo1, which then reloads foo2 
> in the context of foo1, so when calling a function in foo1 that calls foo2, 
> we get the updated output.  But, when calling foo2 functions directly, we get 
> the old functions.

No. This is wrong. There is only one some.ns.foo2. It doesn't matter where 
things are loaded from.

Sincerely
Meikel

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