scala> val l = List((1,2), (2,3))
l: List[(Int, Int)] = List((1,2), (2,3))
que puede hacerlista de tuplas veces en Scala con desestructuración
scala> (0 /: l) {(a, i) => i._1 + a}
res20: Int = 3
Pero yo quiero ser capaz de nombrar los elementos de la tupla. Algo así como:
scala> (0 /: l) {(a, (b,c)) => b + a}
<console>:1: error: not a legal formal parameter
(0 /: l) {(a, (b,c)) => b + a}
^
Sé que puedo hacer:
scala> (0 /: l) {(a, i) => val (b, c) = i; b + a}
res0: Int = 3
Pero hay una manera de hacer que el código sea más concisa (mi código real implica varias de tales pliegues y no me gusta la necesidad de inventar un nombre de variable ('i' en el ejemplo anterior) para cada uno)