Скажем, у нас есть две последовательности, и мы хотим объединить их, используя некоторый метод
val a = Vector(1,2,3)
val b = Vector(4,5,6)
, например, сложение может быть
val c = a zip b map { i => i._1 + i._2 }
или
val c = a zip b map { case (i, j) => i + j }
Повторение во второй части заставляет меня думать, что это должно быть возможно за одну операцию.Я не вижу встроенного метода для этого.Я полагаю, что мне действительно нужен метод zip, который пропускает создание и извлечение кортежей.
Есть ли более приятный / более лаконичный способ в простом Scala или, может быть, в Scalaz?Если нет, то как бы вы написали такой метод и поместили его в последовательности, чтобы я мог написать что-то вроде
val c = a zipmap b (_+_)