Core concept

List(1, 2, 3).map(_ * 2)  // List(2, 4, 6)
List(1, 2, 3).filter(_ > 1)  // List(2, 3)
List(1, 2, 3).foldLeft(0)(_ + _)  // 6
Advertisement

How it works

foldLeft vs foldRight semantics differ for infinite/lazy.

Advertisement

Trade-offs + gotchas

Foundation of FP collection processing.