On Sep 7, 2009, at 5:19 PM, Conrad <drc...@gmail.com> wrote: > > Hi everyone! I have some data that consists of key/value pairs, but > that need to maintain their order, in terms of when they were added to > the list. In most lisps you'd do this with an association list, with a > performance penalty of course if the alist gets too large.
I've used array-map in a couple cases like this. You can build it with (apply array-map my-key-val-seq) and it will keep the order you give it. If you use assoc you're likly to get back a randomly-ordered hash map, but sometimes you just don't need to do that. This has the same O(n) perf as alists. Another option to keep in mind is a struct map, which will give you faster lookups and keep the order of the set of keys in the initial definition. Between the two you may be able to get what you need for a lot of cases. --Chouser --~--~---------~--~----~------------~-------~--~----~ 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 -~----------~----~----~----~------~----~------~--~---