reduceLeftOption

trait Collection[A] {
  def reduceLeftOption[B :> A](f: (B, A) => B): Option[B]
}

reduceLeftOption aplica, de izquierda a derecha, el operador binario op a cada elemento y al resultado del anterior op. La primera vez que op es aplicado es alimentado con los dos primeros elementos. El resultado final es envuelto con Some.

En colecciones vacías esta función devuelve None.