Я пытаюсь свернуть список опций, чтобы вернуть первое (или последнее) значение Some или None, если некоторые значения отсутствуют.
scala> val opts = List(None, Some(1), None, Some(2), None)
opts: List[Option[Int]] = List(None, Some(1), None, Some(2), None)
scala> opts foldLeft(None)((a,io) => a match { case None => io; case Some(i) =>
a})
<console>:9: error: object None does not take parameters
opts foldLeft(None)((a,io) => a match { case None => io; case Some
(i) => a})
^
Не уверен, что я делаю не так. Также, вероятно, есть способ сделать это проще, используя функцию более высокого порядка, но ничего из здесь не бросилось в глаза.