Hi Renata,

The problem with your code is that it is using *map* at the top level,
which is a function that returns a lazy sequence. You are asking clojure to
do something like:

*Take each number n in inviteds and create a sequence of hash maps, where
each hash map has n as a key and 1 as it's value.*

But what you really want is a function at the top level that returns a hash
map. As Colin shows, you can use *into* (here is a slightly different way
than the one he used):

*Take each number in inviteds and create a sequence of pairs. Each pair
should have the number as it's first value, and 1 as the second. Then take
those pairs, and "pour" them into a hash map.*

(->> inviteds
     (map (fn [number] (vector number 1)))
     (into {}))

You could also do it via *reduce*:

*Start with an empty hash map, then assoc each number in inviteds with 1 as
it's value*:

(reduce (fn [m number] (assoc m number 1))
        {}
        inviteds)

Cheers,
Mauricio

-- 
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to [email protected]
Note that posts from new members are moderated - please be patient with your 
first post.
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
--- 
You received this message because you are subscribed to the Google Groups 
"Clojure" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to