Sure, but I plan to have many maps. So one map with many maps as values...
hm.... Anyway, I just play around...
-Ralf

On Sun, Nov 23, 2008 at 8:43 PM, Stuart Sierra
<[EMAIL PROTECTED]>wrote:

>
> On Nov 23, 12:37 pm, "Ralf Bensmann" <[EMAIL PROTECTED]>
> wrote:
> > Hi all,
> >
> > how can I create a var with a "dynamic name for a symbol" using the def
> > special form?
>
> This works:
>
>    user=> (defmacro defsym [symbol & body]
>             `(def ~(eval symbol) [EMAIL PROTECTED]))
>    nil
>    user=> (defsym (symbol "user" "bar") 42)
>    #'user/bar
>    user=> bar
>    42
>
> But only if the namespace already exists:
>
>    user=> (defsym (symbol "foo" "bar") 42)
>    java.lang.Exception: Can't refer to qualified var that doesn't
> exist (NO_SOURCE_FILE:11)
>
> In general, you probably don't want to do this, anyway.  As an
> alternative, try using a map.
>
> -Stuart Sierra
> >
>

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