On Sep 23, 2:20 am, Kevin Livingston
<kevinlivingston.pub...@gmail.com> wrote:
> what's the actual use case where you want this?
> it seems pretty weird just on it's own.  it may in practice be more
> clever than other solutions, but that's not clear yet.  if you just
> want a unique symbol there's (gensym)

For the sake of illustration, this function will chunk a vector into
vectors of identical elements, in order (no assurance that it won't
be weird in context):

 (defn grp [s]
        (-> (reduce
             (fn [[v chunk] elt]
                 (if (or (empty? chunk) (= elt (first chunk)))
                     [v (conj chunk elt)]
                     [(conj v chunk) [elt]]))
             [[][]] (conj s s))
            (first)))

user> (grp [])
[]
user> (grp [1 2 3 2 2 3])
[[1] [2] [3] [2 2] [3]]
user> (grp [1 1 4 4 4])
[[1 1] [4 4 4]]
user>

> regarding vectors, I found this a helpful read a while back, it's a
> few years old, but I think it's still accurate, and may help you get a
> picture of what's under the 
> hood.http://blog.higher-order.net/2009/02/01/understanding-clojures-persis...
>
> Kevin
>

That's helpful, thank you.

-- 
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

Reply via email to