Size: a a a

2020 July 05

AA

A64m AL256m qn<co... in Haskell
Aminion
Если юзать Attoparsec для своего кастомного протокола бинарного, то чем сереализировать данные?
байтстринг билдером
источник

LO

Leonid 🦇 Onokhov in Haskell
Александр Бантьев
Ну так мне интересно просто получить тройку build, host, target абстрактно от винды/невинды.
Может в CPP, х.з
источник

TA

Tel Asc in Haskell
Timofey Zakrevskiy
Divisible/Decidable, кстати, интересные классы. co-log не даст соврать
Но мне почему-то такая реализация контрАппликатива кажется более естественной:

class ContrApplicative f where
   capp :: f (b -> a) -> (f a -> f b)

Но это уже совсем дичь какая-то...
Т.к. я для  Op реализовать такой аппликатив пытался,но там вообще ничего не выходит...
источник

K

Kir in Haskell
Tel Asc
Но мне почему-то такая реализация контрАппликатива кажется более естественной:

class ContrApplicative f where
   capp :: f (b -> a) -> (f a -> f b)

Но это уже совсем дичь какая-то...
Т.к. я для  Op реализовать такой аппликатив пытался,но там вообще ничего не выходит...
Возможно потому, что это не контраппликатив, а непонятно что?
источник

ЗП

Зигохистоморфный Пре... in Haskell
Прежде чем делать что-то общее надо хоть одного представителя придумать и потом уже абстракцию поднимать
источник

к

кана in Haskell
Tel Asc
Но мне почему-то такая реализация контрАппликатива кажется более естественной:

class ContrApplicative f where
   capp :: f (b -> a) -> (f a -> f b)

Но это уже совсем дичь какая-то...
Т.к. я для  Op реализовать такой аппликатив пытался,но там вообще ничего не выходит...
делаем все просто, перепишем апппликатив в более категорный и понятный вид

class Applicative f where
 unit :: f ()
 mult :: (f a, f b) -> f (a, b)

теперь собственно уже легко стрелки первернуть

class CoApplicative f where
 counit :: f () -> () -- это нам бесполезно
 comult :: f (a, b) -> (f a, f b)
источник

к

кана in Haskell
источник

Oℕ

Oleg ℕizhnik in Haskell
comult тоже бесполезен
источник

Oℕ

Oleg ℕizhnik in Haskell
потому что по законам оплакса он обязан быть равен
\fab -> (map fst fab, map snd fab)
источник

Oℕ

Oleg ℕizhnik in Haskell
Поэтому комоноидальные функторы настолько же бесполезны в декартовых категориях, насколько и комоноиды
источник

к

кана in Haskell
а разве комоноиды можно как-то бесплатно выразить нетривиально (то есть не
(\x -> (mempty, x))
) ?
источник

Oℕ

Oleg ℕizhnik in Haskell
да, в декартовой категории для каждого объекта есть комоноид и это единственный комоноид, который возможен.
То же самое можно сказать про комоноидальные функторы.
Каждый функтор между декартовыми категориями комоноидален тривиальным образом и других комоноидальных функторов нет.
источник

Oℕ

Oleg ℕizhnik in Haskell
кана
а разве комоноиды можно как-то бесплатно выразить нетривиально (то есть не
(\x -> (mempty, x))
) ?
комоноид для производного типа x будет пара функций
\x -> () и \x -> (x, x)
источник

TA

Tel Asc in Haskell
кана
делаем все просто, перепишем апппликатив в более категорный и понятный вид

class Applicative f where
 unit :: f ()
 mult :: (f a, f b) -> f (a, b)

теперь собственно уже легко стрелки первернуть

class CoApplicative f where
 counit :: f () -> () -- это нам бесполезно
 comult :: f (a, b) -> (f a, f b)
Из Applicative можно вывести devide(Divisible):
devide :: (Contravariant f,Applicative f)=>(c -> (b,a)) -> f a -> f b -> f c
devide f a b = contramap f (mult b a)

Это нормально,что из такого Applicative выводится и (<*>) и devide?
Это как-бы обобщение аппликатива?
источник

JS

Jerzy Syrowiecki in Haskell
Tel Asc
Из Applicative можно вывести devide(Divisible):
devide :: (Contravariant f,Applicative f)=>(c -> (b,a)) -> f a -> f b -> f c
devide f a b = contramap f (mult b a)

Это нормально,что из такого Applicative выводится и (<*>) и devide?
Это как-бы обобщение аппликатива?
у вас инвариантный функтор получился, поэтому всё выводится
источник
2020 July 06

JS

Jerzy Syrowiecki in Haskell
то есть это обобщение ничего
источник

ЕС

Елена Сомова... in Haskell
источник

АГ

Александр Гранин... in Haskell
источник

АГ

Александр Гранин... in Haskell
There's not much too learn in Haskell after you got the mandatory PhD in functional programming to use it
источник

MV

Maxim Vishnevsky in Haskell
Елена Сомова
!спам
источник