data X a = X {user :: a, ...} с фокусом на a, список [X UserID], и запрос f :: [UserID] -> m [UserView]. Понятно, что если делать руками, можно получить [X UserView] послав один запрос (а потом zipWith например). Но может можно как то сфокусироваться на [UserID] внутри этих иксов?
Тебе надо скомпозить линзу с traverse, чтобы она работала со списком иксов
Пробовал вроде, если traverse то хочет линзу, фокусирующую на одном
И запрос который работает с одним a только получилось, но сейчас ещё подумаю
Именно скомпозить, а не применить одно к другому
Обсуждают сегодня