scanLeft

trait Collection[A] {
  def scanLeft[B](z: B)(op: (B, A) => B): Collection[B]
}

scanLeft cria uma coleção com os resultados intermediários da aplicação do operador binário op aos elementos dessa coleção, indo da esquerda para a direita. A primeira vez que op é aplicada, ela é alimentada com o valor inicial z.