Size: a a a

2020 November 26

MK

Maxim Koltsov in Haskell
грр, как же сложно
источник

MK

Maxim Koltsov in Haskell
хочется как в том меме
источник

a

adam in Haskell
а я даже заиспользовал strength когда оптимизатор писал на проекте
источник

a

adam in Haskell
хотя там кейс тривиальный
источник

a

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

к

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

OP

Oleg Prutz in Haskell
Maxim Koltsov
чего не хватает в определении (T, eta, mu) чтобы сделать strength?
конструктора пары?
источник

MK

Maxim Koltsov in Haskell
Oleg Prutz
конструктора пары?
ну я говорю, пусть мы в CCC живём
источник

OP

Oleg Prutz in Haskell
конструктор пары (некаррированный) принимает два аргумента ~ пару аргументов (уже нужно иметь пару)
источник

MK

Maxim Koltsov in Haskell
ладно, это конечно тут офтоп, извините
источник

MK

Maxim Koltsov in Haskell
зацените тогда просто юмор из статьи:

> Most practical programming languages have sum types.
источник

к

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

A

Andrey in Haskell
СЯУ, что HashMap из unordered-containers течёт (Митчелл ещё летом репортил об уточке), это пофиксили, но в stackage фикс есть лишь в Nightly
источник

MK

Maxim Koltsov in Haskell
инжой стакадж
источник

NI

Nick Ivanych in Haskell
кана
в хаскеле просто я так понял все монады strong
+
источник

A

Andrey in Haskell
Maxim Koltsov
инжой стакадж
я больше для инфы ⚠️, вдруг кто не в курсе, сам-то уже поправил
источник

NI

Nick Ivanych in Haskell
Maxim Koltsov
чего не хватает в определении (T, eta, mu) чтобы сделать strength?
Умение выделить "значение типа" не хватает.
А точнее, в well-pointed-категориях монады сильные.
источник

MK

Maxim Koltsov in Haskell
Nick Ivanych
Умение выделить "значение типа" не хватает.
А точнее, в well-pointed-категориях монады сильные.
λ> f = \p_a_mb -> fmap (\b -> (fst p_a_mb, b)) (snd p_a_mb)
λ> :t f
f :: Functor f => (a, f b) -> f (a, b)


а что в этой конструкции не прокатывает?
источник

к

кана in Haskell
возьмем категорию, где объекты - натуральные числа, а морфизм a -> b есть только когда a >= b

возьмем в нем бифунктор max, который внезапно окажется произведением, с единицей как 0, так как он отображает на наименьший объект, из которого есть оба морфизма в составные части

b <- max(a, b) -> a
max(0, a) -> a = max(a, 0) -> a = id_a

итак, получили моноидальную категорию

в качестве эндофунктора возьмем succ : a -> a + 1, естественность сохраняется
вроде бы и монадой является вполне

нужно построить морфизм

max(a, succ(b)) -> succ(max(a, b))

и такого морфизма нет, например
max(5, 1+1) -> max(5,1) + 1
5 -> 6
источник

к

кана in Haskell
но я чет не уверен в succ
источник