Size: a a a

2020 December 17

ЗП

Зигохистоморфный Пре... in Haskell
вынеси текст в секцию where
источник

AV

Alexander Vershilov in Haskell
Ну текст это применение функции с аргументами и т.п.
источник

AV

Alexander Vershilov in Haskell
Попробую do+BA
источник

R

Roman in Haskell
Alexander Vershilov
Скобочки не красиво, $ не сработает, do+BlockArguments?
set foo . bar $ <текст>?
источник

AV

Alexander Vershilov in Haskell
а потом set foo .bar2 как прицепить?
источник

R

Roman in Haskell
Alexander Vershilov
а потом set foo .bar2 как прицепить?
compose
   [ set foo . bar $ <...>
   , set foo . bar2 $ <...>
   ]
   s
источник

R

Roman in Haskell
где compose :: Foldable t => t (a -> a) -> a -> a
источник

ЗП

Зигохистоморфный Пре... in Haskell
Roman
compose
   [ set foo . bar $ <...>
   , set foo . bar2 $ <...>
   ]
   s
это appEndo . foldMap Endo
источник

R

Roman in Haskell
foldr (.) id короче
источник

ЗП

Зигохистоморфный Пре... in Haskell
Roman
foldr (.) id короче
или coerce + foldMap для Endo
источник

AA

A64m AL256m qn<co... in Haskell
coerce + fold
источник

AV

Alexander Vershilov in Haskell
fold !@Endo
источник

R

Roman in Haskell
A64m AL256m qn I0
coerce + fold
and we have a winner
источник

R

Roman in Haskell
дисквалифицирован
источник

AV

Alexander Vershilov in Haskell
За что?
источник

R

Roman in Haskell
за воображаемые экстеншоны
источник

AV

Alexander Vershilov in Haskell
module Control.ApplyingVia
 ( (!@)
 , (!!@)
 ) where

import Data.Coerce

(!@) :: (Coercible a' a, Coercible b' b) => (a' -> b') -> (a -> a') -> a -> b
(!@) f _ = coerce f
источник

R

Roman in Haskell
или я все пропустил и его таки сделали?
источник

R

Roman in Haskell
Alexander Vershilov
module Control.ApplyingVia
 ( (!@)
 , (!!@)
 ) where

import Data.Coerce

(!@) :: (Coercible a' a, Coercible b' b) => (a' -> b') -> (a -> a') -> a -> b
(!@) f _ = coerce f
а
источник

AV

Alexander Vershilov in Haskell
Вообще такая штука в base есть но не экспортирована
источник