Учитывая список пар [(Double, Double)]
, я хочу разделить второй элемент пары на его индекс, увеличенный на единицу. Я думал, что это работа для IndexedTraversal
, но я просто не могу заставить ее скомпилироваться:
over (indexing (traverse . _2)) (\ix x -> x / fromIntegral (ix + 1)) [(2, 3)]
Выше не работает, потому что over
ожидает функцию типа Double -> Double
. Есть ли эквивалент over
для IndexedTraversal
?