(take-while seq (iterate rest [1 2 3 4]))

On Fri, Nov 29, 2013 at 5:17 PM, Paul Butcher <p...@paulbutcher.com> wrote:

> I fear that I'm missing something obvious here, so I'm getting ready to
> kick myself. I'm looking for an equivalent of Scala's "tails" method:
>
> scala> List(1, 2, 3, 4).tails.toList
> res0: List[List[Int]] = List(List(1, 2, 3, 4), List(2, 3, 4), List(3, 4),
> List(4), List())
>
>
> But I'm damned if I can find anything in the standard library. Clearly I
> can define it myself:
>
> user=> (defn tails [coll]
>   #_=>   (lazy-seq
>   #_=>     (when-let [s (seq coll)]
>   #_=>       (cons s (tails (rest s))))))
> #'user/tails
> user=> (tails [1 2 3 4])
> ((1 2 3 4) (2 3 4) (3 4) (4))
>
>
> But I can't believe that an equivalent isn't already in there somewhere?
> Thanks in advance to anyone who points me in the right direction.
>
> --
> paul.butcher->msgCount++
>
> Silverstone, Brands Hatch, Donington Park...
> Who says I have a one track mind?
>
> http://www.paulbutcher.com/
> LinkedIn: http://www.linkedin.com/in/paulbutcher
> Skype: paulrabutcher
>
>
>
>
>  --
> --
> 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
> ---
> You received this message because you are subscribed to the Google Groups
> "Clojure" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to clojure+unsubscr...@googlegroups.com.
> For more options, visit https://groups.google.com/groups/opt_out.
>

-- 
-- 
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
--- 
You received this message because you are subscribed to the Google Groups 
"Clojure" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to clojure+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.

Reply via email to