On Aug 29, 2012, at 12:18 PM, Brian Marick <[email protected]> wrote:
> Why does `(merge)` return nil? I would have expected it to return the unit
> ({})
I agree with your intuition -- I expected an empty map. However, the doc says
"Returns a map that consists of the rest of the maps conj-ed onto the first"
which implies that correct usage needs at least one map. As an aside, it
doesn't say anything about nil arguments, but they seem to be supported as well
as maps. My guess, based on a quick look at some of the commits, is that
allowing nil as an argument was convenient for some metadata manipulations, and
the edge case of no-arguments wasn't considered important. It looks like it
would be easy to fix and probably wouldn't break any code since no one should
be depending on the undocumented nullary behavior.
Steve Miner
[email protected]
--
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