On Sat, Aug 4, 2012 at 6:43 PM, Mark Engelberg <mark.engelb...@gmail.com> wrote: > What is the reasoning behind the design decision that this generates an > error: > (let [a :x b :x] #{a b}) > rather than just returning #{:x} ?
My first reaction was that literals have to obey the rules of the underlying type or else they are not valid literals: #{1 2 1} ;; error {:x 1 :y 2 :x 3} ;; error I hadn't even thought of using the set literal syntax with variables that might not have unique value. I guess I'd ask: why not use the set function? (let [a :x b :x] (set [a b])) ;; #{:x} -- Sean A Corfield -- (904) 302-SEAN An Architect's View -- http://corfield.org/ World Singles, LLC. -- http://worldsingles.com/ "Perfection is the enemy of the good." -- Gustave Flaubert, French realist novelist (1821-1880) -- 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 Note that posts from new members are moderated - please be patient with your first post. 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