Konrad,

I'm able to do that from the REPL when done one by one :
(clojure.core/ns-unmap *ns* (quote filter))
(clojure.core/defn filter [] "oh my!")

thus correctly redefining the binding of filter for the rest of use by the
ns

But I can't manage to get it work from a macro (indeed not even when
directly called inside a do) :

(do (clojure.core/ns-unmap *ns* (quote filter)) (clojure.core/defn filter []
"my map!"))

What is wrong with me ? (Something with def I still haven't understood, I
think)

Thanks in advance,

-- 
laurent

2009/3/2 Konrad Hinsen <konrad.hin...@laposte.net>

>
> Over the last weeks, two additions to clojure.core broke several of
> my library modules by introducing names into the clojure.core
> namespace that I was using in my libraries as well. While this kind
> of problem is acceptable in a pre-release development period, I don't
> expect it to go away with release 1.0, so I believe we need to do
> something about it.
>
> Basically, the problem concerns access to other namespaces via :use
> or :refer, though in practice it is most important for clojure.core
> that is referred to by default in any namespace. A symbol that refers
> to a var from another namespace cannot be redefined. If I introduce a
> symbol in my namespace and in a later release the same symbol is
> defined in a namespace that mine refers to, I can no longer compiler
> my namespace.
>
> For namespaces other than clojure.core, an acceptable solution is to
> use the :only keyword in the :use clause of the ns macro. This just
> requires a bit more work in typing, but I don't see any other
> potential difficulty. I am currently converting all my code to
> use :only, and I haven't had any bad surprises until now. For
> clojure.core, listing all imported symbols explicitly would be a real
> pain, but I don't see any other simple solution. I just hope someone
> else does :-)
>
> Konrad.
>
> >
>

--~--~---------~--~----~------------~-------~--~----~
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 
clojure+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/clojure?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to