'доходность' в Scala эквивалентно функции карты?

Я начинаю изучить язык программирования Scala. Я немного разбираюсь в языках FP, таких как Erlang и Haskell, и у меня есть сомнения по поводу значения выражения for/yield, например:

for (arg <- args) yield arg.length

Это собирало бы массив с длинами любого входного аргумента. Из того, что я понял, это похоже на функцию карты в обычном программировании FP:

map (\a -> a * 2) [1, 2, 3] (in Haskell)

Я знаю, что библиотека Scala содержит метод scala.collection.map, поэтому я хотел бы знать:есть ли какие-либо различия или ограничения в использовании либо стиль, либо они точно такие же?

6
задан Vincenzo Maggio 16 April 2012 в 22:30
поделиться