Импорт:
> import Control.Lens
Control.Lens> import qualified Data.Map as Map
и значение карты, определяемое следующим образом:
Control.Lens Map> let m = Map.fromList [('a', 1), ('c', 3), ('b', 2)]
Я могу получить элементы один за другим так:
Control.Lens Map> view (at 'b') m
Just 2
Я хочу знать, есть набор ключей, таких как:
Control.Lens Map> import qualified Data.Set as Set
Control.Lens Map Set> let keys = Set.fromList ['d', 'c', 'b']
как построить такой getter (я думаю), используя который я смогу получить набор (или список) соответствующих элементов:
Control.Lens Map Set> view (**???**) m
[3, 2]
Обратите внимание, что результат содержит только 2 элемента, потому что нет соответствия для ключа 'd'
.