Hi,

Am 26.06.2009 um 20:41 schrieb Four of Seventeen:

(defn- foo [args] body)

(defmacro bar [args] body)
 `(foo ~some-args (fn [~more-args] ~...@body)))

and it complained that foo was not public when I invoked bar from
outside its home namespace.

Yes. foo must be public in macros used by other
namespaces. But so what. Just make it public.
Call it bar* (like the macro) and tell the people
not to use it. Or better document it and let the
people use it if the choose so. Eg. in map or
with apply etc.

If it really, really, really must be private you can
"yell long enought at the Var" (as Christophe
put it):

@#'my.name.space/private-foo

Sincerely
Meikel

Attachment: smime.p7s
Description: S/MIME cryptographic signature

Reply via email to