Size: a a a

2020 December 28

DB

Danil Berestov in Haskell
A64m AL256m qn I0
функтор - идиоматично линзовый класс же, он только в линзах как-то и полезен
а как же траверс
источник

AA

A64m AL256m qn<co... in Haskell
Danil Berestov
а как же траверс
этот тоже идиоматично линзовый (но полезен и без линз)
источник

к

кана in Haskell
Yan Shkurinskiy
просто думал есть оператор где оно уже есть)
ну оператор легко сделать
источник

к

кана in Haskell
(^.~) :: ASetter s t a b -> Getter a b -> s -> t
(^.~) setter getter = over setter (view getter)

x :: Maybe (a, b) -> Maybe a
x = mapped ^.~ _1
источник

к

кана in Haskell
только это неправильный оператор, суждает view
источник

к

кана in Haskell
(^.~) :: Monoid b => ASetter s t a b -> Getting b a b -> s -> t
(^.~) setter getter = over setter (view getter)

infixr 4 ^.~

x :: Monoid a => Maybe ([a], b) -> Maybe a
x = mapped ^.~ _1 . each
источник

in Haskell
Yan Shkurinskiy
просто думал есть оператор где оно уже есть)
есть оператор <$> лол
источник

in Haskell
с ним сразу выглядит по-линзовому
источник

YS

Yan Shkurinskiy in Haskell
есть оператор <$> лол
хотелось узнать, есть оператор из коробки, чтобы не писать foo  ^. #bar <&> (^. #baz)
источник

YS

Yan Shkurinskiy in Haskell
но если его нет - то я лучше фмапом напишу
источник

YS

Yan Shkurinskiy in Haskell
выдумывать свой пока не хочется .-.
источник

к

кана in Haskell
да все равно придется рано или поздно писать свои линзы и траверсалы
источник

к

кана in Haskell
я как считаю, lens не только дает свои операторы, они еще дают вполне понятный нейминг для операторов
источник

к

кана in Haskell
+~, -~, <>~
источник

к

кана in Haskell
почему бы не сделать и ^.~
источник

к

кана in Haskell
должно быть сразу понятно что этот оператор делает
источник

YS

Yan Shkurinskiy in Haskell
я пока фмап просто воткну
источник

YS

Yan Shkurinskiy in Haskell
х(
источник

к

кана in Haskell
кана
да все равно придется рано или поздно писать свои линзы и траверсалы
потому что многих полезных вещей в lens нет
источник

YS

Yan Shkurinskiy in Haskell
должен быть lens-extra!
источник