Slide 82
Slide 82 text
totallylazy library
Similar to Groovy’s collection GDK methods …
Except … lazy …
@GrabResolver('http://repo.bodar.com/')
@Grab('com.googlecode.totallylazy:totallylazy:1113')
import static com.googlecode.totallylazy.Sequences.map
import static com.googlecode.totallylazy.numbers.Numbers.*
assert range(6, 10) == [6,7,8,9,10]
assert range(6, 10, 2).forAll(even)
assert range(6, 10).reduce{ a, b -> a + b } == 40
assert range(6, 10).foldLeft(0, add) == 40
assert map(range(6, 10), { it + 100 }) == [106,107,108,109,110]
assert primes().take(10) == [2,3,5,7,11,13,17,19,23,29]
assert range(1, 4).cycle().drop(2).take(8) == [3,4,1,2,3,4,1,2]
println range(6, 1_000_000_000_000).filter(even).drop(1).take(5)
// => 8,10,12,14,16 (a handful of millis later)