On Mon, Apr 20, 2009 at 5:17 PM, Hugh Winkler <hwink...@gmail.com> wrote: > > On Mon, Apr 20, 2009 at 1:59 PM, David Nolen <dnolen.li...@gmail.com> wrote: >> Maps aren't ordered so this isn't a good idea anyway. > > It's a good idea if you have a sorted map. My example should have used > sorted-map. > >> The reason first/second work is because they call seq on the collection. >> (key (nth (seq {:a 1 :b 2 :c 3}) 1)) -> :b >> > > Thanks! I think 'nth ought to behave just like 'first and 'second, > don't you? If it's a good idea for 'first it's a good idea for 'nth.
Probably not. I expect nth on a vector to be much faster than on a seq. O(1) vs O(n), respectively. Cheers, Victor Rodriguez. > > [Apologies to all for the several redundant posts on this topic. I've > been getting rejection messages from Google Groups for no reason]. > >> On Mon, Apr 20, 2009 at 2:51 PM, hughw <hwink...@gmail.com> wrote: >>> >>> Hi all, >>> >>> Why should 'first and 'second work on maps, but not 'nth? >>> >>> user> (key (first {:a 1 :b 2 :c 3})) >>> :a >>> user> (key (nth {:a 1 :b 2 :c 3} 0)) >>> ; Evaluation aborted. >>> >>> java.lang.UnsupportedOperationException: nth not supported on this >>> type: PersistentArrayMap (NO_SOURCE_FILE:0) >>> [Thrown class clojure.lang.Compiler$CompilerException] >>> >>> Thanks, >>> Hugh >>> >>> >> >> >> > >> > > > > -- > Hugh Winkler, CEO > Wellstorm Development > 31900 Ranch Road 12 > Suite 206 > Dripping Springs, TX 78620 > USA > http://www.wellstorm.com/ > +1 512 264 3998 x801 > > > > --~--~---------~--~----~------------~-------~--~----~ 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 -~----------~----~----~----~------~----~------~--~---