Makes sense, but (#{:a :b :c} :b) doesn't return 'true', it returns :b. So it's not really acting like an object to boolean mapping. Doesn't much matter, though.
By the way, I'd like to see map-map in the core. -Ethan On Jan 12, 5:30 pm, Stuart Sierra <the.stuart.sie...@gmail.com> wrote: > A set is, in a sense, a function mapping from arbitrary objects to > Boolean values. If the object is in the set, it returns true. A list, > in the Lisp world at least, only has two elements, first and rest (car > and cdr in older Lisps). A list object isn't really a "complete" > collection the way vectors and maps are. There isn't a good way to > conceptualize that as a function. > > I've probably just made this more confusing, but that's the best I > could come up with. > > -Stuart Sierra > > On Jan 12, 6:51 pm, Ethan Herdrick <herdr...@gmail.com> wrote: > > > Then why are sets callable? Not that I'm complaining - I found it > > handy, then came to wonder why lists aren't. > > > -Ethan > > > > I'd just like to add to this discussion that maps and vectors are > > > functions not just because it's neat or possible, with the > > > implementation one of many possibilities, but because they are > > > associative, and associative collections are inherently functions of > > > their keys/indices. > > > > Lists/seqs are not associative, thus not functions. > > > > Rich --~--~---------~--~----~------------~-------~--~----~ 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 -~----------~----~----~----~------~----~------~--~---