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.

Reply via email to