Size: a a a

2020 May 15

JS

Jerzy Syrowiecki in Haskell
🍔Nadir -
Всем привет, никак не могу понять почему эта функция должна фильтровать list? Она же просто применяет функцию чекер и заного собирает тот же массив, где происходит отсев False values?
xs — это не тот же массив
источник

JS

Jerzy Syrowiecki in Haskell
🍔Nadir -
filter :: (a -> Bool) -> [a] -> [a]  
filter _ [] = []  
filter p (x:xs)   
    | p x       = x : filter p xs  
    | otherwise = filter p xs
на входе x:xs, на выходе xs, то есть на один меньше
источник

JS

Jerzy Syrowiecki in Haskell
> заного
источник

IK

Ilya Kos in Haskell
если я напишу fmap f . fmap g комплятор это сам в fmap (f . g) перепишет?
источник

IK

Ilya Kos in Haskell
с каким-нибудь -O
источник

MK

Maxim Koltsov in Haskell
скорее да чем нет, это кажется в рулсах было
источник

к

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

IK

Ilya Kos in Haskell
а я могу как-то сказать “в этом месте так делать не надо ни при каких флагах”?
источник

к

кана in Haskell
но вроде бы даже если не перепишет, в ленивых структурах будет один и тот же поток вычислений
источник

IK

Ilya Kos in Haskell
ну я пишу проверку законов квикчкеом
источник

IK

Ilya Kos in Haskell
с fmap может и правда без разницы
источник

IK

Ilya Kos in Haskell
а в монадах уже хорошо бы ничсего не переписывать
источник

IK

Ilya Kos in Haskell
в плане чтобы rewrite rules не применялись
источник

IK

Ilya Kos in Haskell
источник

IK

Ilya Kos in Haskell
но подозреваю что у них там переписывается и на деле ничего не проверяется
источник

IK

Ilya Kos in Haskell
а вот еще такое есть https://github.com/nbloomf/tasty-quickcheck-laws
источник

IK

Ilya Kos in Haskell
источник

IK

Ilya Kos in Haskell
если бы я был компилятором, я бы это переписал
источник

IK

Ilya Kos in Haskell
Я чет когда-то видел либу которая как-то могла в тестах проверять *применяются ли правила*
источник

MP

Misha Puzanov in Haskell
Ilya Kos
Я чет когда-то видел либу которая как-то могла в тестах проверять *применяются ли правила*
inspection-testing скорее всего
источник