@haskellru

Страница 1061 из 1551
Андрей
05.04.2018
09:02:06
помню, тоже в одном чате удивил присутсвующих заявлением, что ИО - не монада. потребовали объяснений )))

Denis
05.04.2018
09:02:18
Андрей
05.04.2018
09:02:21
выйти из монады - невозможно (С) же ))

Aleksey
05.04.2018
09:02:27
Ио - спутник

Google
Dmitry
05.04.2018
09:02:46
Для взлома матрицы

Denis
05.04.2018
09:03:02
из vim-монады?
из Emacs, из Vim любой выйти может! ?

Anatolii
05.04.2018
09:03:09
из vim-монады?
о, вим - монада, вот и заголовок для нового туториала

Denis
05.04.2018
09:03:10
Emacs-монада

EmacsMonad

Андрей
05.04.2018
09:03:19
картинки не приветствуются - http://ratbag.vkomi.ru/files/2015/01/help-me-get-out-from-dog.jpg

Aleksey
05.04.2018
09:03:42
"ViM - Vim is (a) Monad"

Anatolii
05.04.2018
09:03:49
товарищи, а помошите картинку найти там где велосипедист и String -> String -> String -> String

Leonid
05.04.2018
09:03:54
@catamorphism калька кода для Verb из Servant instance {-# OVERLAPPABLE #-} (ToJSON (ErrUnion e), ToJSON r) => HasServer (RPC e r) ctx where type ServerT (RPC e r) m = m (Either (OpenUnion e) r) hoistServerWithContext _ _ nt = nt route Proxy _ = methodRouter' $ \x -> (getHeaders x, getResponse x) instance {-# OVERLAPPING #-} (ToJSON (ErrUnion e), ToJSON r, GetHeaders (Headers h r)) => HasServer (RPC e (Headers h r)) ctx where type ServerT (RPC e (Headers h r)) m = m (Headers h (Either (OpenUnion e) r)) hoistServerWithContext _ _ nt = nt route Proxy _ = methodRouter' ([],)

Denis
05.04.2018
09:04:00
Google
Anatolii
05.04.2018
09:04:09
вот кстати у Yi проблем нет - там вроде 3 монады целых

и есть YiM

не дурят людей хотя бы

мне она была нужна когда я увидел как флаги парсят ребята

тут конечно другой случай

interface{} -> interface{} -> interface{}

Leonid
05.04.2018
09:06:25
@catamorphism тут красивее https://gist.github.com/sopvop/1b6bdbf35dc1d5105a061ef295836e15

Aleksey
05.04.2018
09:07:08


Hot
05.04.2018
09:07:34
Кккк

Alexander
05.04.2018
09:07:34
да вы издеваетесь!

A
05.04.2018
09:07:37
только в руби)

Hot
05.04.2018
09:07:39
Я так пишу :(

Простите.

Leonid
05.04.2018
09:08:37
@catamorphism тут красивее https://gist.github.com/sopvop/1b6bdbf35dc1d5105a061ef295836e15
@qnikst вот мой код с RPC и внизу выдранный из серванта. Почему мой ноет про Overlapping Instances для ServerT?

Denis
05.04.2018
09:08:52
а в серванте работает
У меня такая же проблема была! И я как назло не помню в чем было дело.

Leonid
05.04.2018
09:09:23
может нужно не включить, а выключить какие-то расширения...

нет :(

Google
Denis
05.04.2018
09:10:36
а ошибку покажи?

Leonid
05.04.2018
09:11:05
src/Servant/API/RPC.hs:74:8-55: error: … Conflicting family instance declarations: ServerT (RPC e r) m = m (Either (OpenUnion e) r) -- Defined at /home/lonokhov/work/stagex-store/stagex-api/src/Servant/API/RPC.hs:74:8 ServerT (RPC e (Headers h r)) m = m (Headers h (Either (OpenUnion e) r)) -- Defined at /home/lonokhov/work/stagex-store/stagex-api/src/Servant/API/RPC.hs:81:8

Denis
05.04.2018
09:11:41
а ты уверен что именно эти две конфликтуют?

а хотя тут строки

Leonid
05.04.2018
09:12:07
а больше некому

Denis
05.04.2018
09:12:09
в ошибке

Андрей
05.04.2018
09:13:38
Если некто перманентно пребывает в контексте непонимания монад, но при этом способен внспринимать информацию снаружи, причем независимо от степени ее разделения на отдельные части, то можно ли утверждать, что он уже в двух шагах от понимания?

Hot
05.04.2018
09:22:43
Кажется, вы про меня сейчас.

Но я не уверен.

Aleksey
05.04.2018
09:26:36
все так

Alexander
05.04.2018
09:27:21
Leonid
05.04.2018
09:27:55
к вечеру всё должно быть в продакшене. кек. Пойду на фриноду искать помощи

Denis
05.04.2018
09:28:13
я тут слепил репро-модуль

какое-то тайпфемильное свойство нарушаем

а вообще я пытаюсь понять почему в серванте работает

Андрей
05.04.2018
09:30:38
Hot
05.04.2018
09:30:57
Да что ж, блин, не так со мной.

Что есть функтор, а что монада?

Что-то одно из этого - частный случай другого?

Alexander
05.04.2018
09:31:48
Headers это что?

Google
Dmitry
05.04.2018
09:31:55
ЧИТАЙ TYPECLASSOPEDIA

Alexander
05.04.2018
09:32:51
кстати был сайт с контрпримерами к тайпклассопедии

Denis
05.04.2018
09:33:02
промоученный тип

Alexander
05.04.2018
09:33:02
вообще учебники с контрагентами примерами прекрасны

Denis
05.04.2018
09:33:10
про Headers

Dmitry
05.04.2018
09:33:11
Давай

Denis
05.04.2018
09:33:22
data Headers bla abl lab

такое

Yuuri
05.04.2018
09:34:02
Что-то одно из этого - частный случай другого?
Монада - частный случай аппликатива, аппликатив - частный случай функтора

Hot
05.04.2018
09:34:17
Ну так IO - это монада всё же?

Dmitry
05.04.2018
09:34:28
А какая разница?

Leonid
05.04.2018
09:34:40
мне на фриноде объяснили

Alexander
05.04.2018
09:34:51
Denis
05.04.2018
09:35:04
и в чем дело?

Yuuri
05.04.2018
09:35:44
Ну так IO - это монада всё же?
Да, ибо есть инстанс

Leonid
05.04.2018
09:36:05
в случае серванта выходит: m a и m (Headers h a) и в пересекающемся инстансе a ~ Headers h a. у меня же не так

Dmitry
05.04.2018
09:36:31
кстати был сайт с контрпримерами к тайпклассопедии
Это: http://blog.functorial.com/posts/2015-12-06-Counterexamples.html ?

Google
Leonid
05.04.2018
09:38:35
да

решение - вынести Either e a в голову инстанса

https://gist.github.com/sopvop/1b6bdbf35dc1d5105a061ef295836e15#file-overlap-hs-L64

уродски

Denis
05.04.2018
09:40:52
после этого компилится?

Leonid
05.04.2018
09:43:09
да

если в итоге сваггером никто пользоваться не будет, я возненавижу сервант совсем сильно и буду всем советовать не трогать его

Denis
05.04.2018
09:45:37
скомпилилось у меня тоже, но я чего-то суть не понял

Leonid
05.04.2018
09:46:51
суть в том что m (Either e a) ~ m (Headers h (Either e a)) vs m a ~ m (Headers h a). первное невозможно а второе возможно

одно тайп фэмили согласовывается, а второе нет

не унифицируются

Denis
05.04.2018
09:49:16
постойте ка

ошибка говорит что о том что LHS у двух тайп фемили друг с другом унифицируемы

Leonid
05.04.2018
09:50:02
может сделать класс class RpcResult e a r | r -> e, r -> a where rpcResult :: r -> Either (OpenUnion e) a для красоты?

ошибка говорит что они конфликтуют

Denis
05.04.2018
09:50:28
хотя должно быть пофиг, наверное, т.к. тип ассоциирован с инстансом, а инстанс выбирается до этого

Leonid
05.04.2018
09:50:36
головы одинаковые, а RHS не оверлапятся

головы оверлапятся а хвосты нет

муть

Страница 1061 из 1551