
Alexander
05.04.2018
09:55:25
я вот не понял
я бы понял если Headers это семейство
с телефона и без компилятора правда тяжело понимать

Google

Denis
05.04.2018
09:58:38
я тоже не понял

Alexander
05.04.2018
10:00:54
оно ж там справа
в левую сторону вообще можно не смотреть
если там в overlapping проблема была

Denis
05.04.2018
10:02:54
я про то что оно там слева в т.ч., поэтому это не могло быть проблемой

Alexander
05.04.2018
10:04:07
а

Denis
05.04.2018
10:05:49
а поменьшеньте-расскажите, если разберетесь детальнее плз?

Leonid
05.04.2018
10:06:37
в общем семейства не могут оверлаппится. оверлапятся инстансы у класса. А семейства в таком случае просто не должны конфликтовать
т.е. в одном случае правая сторона просто ТОЧНЕЕ чем в другом
в одном a в другом (Headers h a)
https://gist.github.com/sopvop/1b6bdbf35dc1d5105a061ef295836e15#file-overlap-hs-L89 вот такое пробую решение

Ilya
05.04.2018
10:08:29

Google

Denis
05.04.2018
10:09:15

Leonid
05.04.2018
10:09:41
в том же смысле в котором в Overlappable

Yuuri
05.04.2018
10:10:11
Посоветуйте нуб-френдли библиотечку для простенькой графики и гуи. В своё время очень радовал Gloss, но не хватало виджетов (кнопочки, текстбоксы всякие).

Leonid
05.04.2018
10:10:30
ну не точнее а уже. я х.з. какое слово правильное, я CS не изучал
типа [Int] уже чем [a]

Denis
05.04.2018
10:10:34
ассоциированная TF предположительно как открытая должна работать, там ограничения все на LHS
хммм, непонятно тогда почему такое ограничение

Leonid
05.04.2018
10:11:47
Ну смотри, есть Overlappable TF для [a], и для [Int]. TF из первого инстанса унифицируется со вторым.
т.е. можно использовать в том же случае

Yuuri
05.04.2018
10:12:17

kana
05.04.2018
10:12:38

Leonid
05.04.2018
10:12:43
вот, да

Denis
05.04.2018
10:13:30
я рассуждаю так: у ассоциированных семей правила должны бы быть аналогичны открытым, т.к. проблемы проистекают из того, что они могут быть объявлены в разных модулях и клоузы будут подгружены в разном порядке

Aleksey
05.04.2018
10:13:43

Denis
05.04.2018
10:14:29
Головы инстансов говорят о том как выбрать один в любом из случаев

Yuuri
05.04.2018
10:14:44
Браузер, в принципе, подойдёт. Спасибо, потыкаю

Denis
05.04.2018
10:14:53
как это может налагать ограничения на RHS ассоциированных TF я не понимаю

Aleksey
05.04.2018
10:18:31

Leonid
05.04.2018
10:19:15
ещевопрос, в продолжение борьбы с Servant. как в ghci развернуть TF? ServerT blah blah -> в подлежащий тип

Denis
05.04.2018
10:19:30
:kind!

kana
05.04.2018
10:20:29
о, а я в прокси всегда сувал

Google

Denis
05.04.2018
10:22:06
а я юзал :kind!

Leonid
05.04.2018
10:24:34
:kind! не умеет переменные

Denis
05.04.2018
10:25:03
конкретизируй их

Leonid
05.04.2018
10:33:18
ну приходится

Alexander
05.04.2018
10:33:43
Prelude> :kind! (forall a. Q a)
(forall a. Q a) :: *
= Int
у меня все умеет
Prelude> :set -XTypeFamilies
Prelude> type family Q a where Q a = Int
если не разворачивает - значит правила не позволяют выбрать

Denis
05.04.2018
10:38:09
Что есть функтор, а что монада?
Тут такая цепочка: сначала идёт функтор, затем, как надстройка над ним, идёт аппликативный функтор, а затем уже, как надстройка над аппликативом, идёт монада. Поэтому всё, что Monad, оно, в свою очередь, и Applicative, и Functor.

Leonid
05.04.2018
10:43:15
ААААААААААА
Проклятый сервант
сволочь
понапишут на закрытых TF кода, а потом кроме Verb ничего не подходит
вот как жить после этого?
нет, всё норм
дислексия попутала

A64m
05.04.2018
10:51:41
тем временем вышла версия generic-lens с траверсалами https://github.com/kcsongor/generic-lens#traversals

kana
05.04.2018
11:04:34

Leonid
05.04.2018
11:10:09
Сколько гигов оперативы при компиляции жрёт?

Denis
05.04.2018
11:10:15
все

Google

Leonid
05.04.2018
11:20:45
так слак уже все сожрал

Denis
05.04.2018
11:21:52
либо линзы, либо слак
pick you challenger

Денис
05.04.2018
13:20:34
Что делать если хочется объявлять два поля с одинаковым именем в разных структурах, а юзать префиксы не хочется?

Denis
05.04.2018
13:20:55
юзать префиксы

Денис
05.04.2018
13:21:31
Блин, ну это ж вообще ужас

Leonid
05.04.2018
13:21:34
DuplicateRecordFields + lens или NamedFieldPuns

Denis
05.04.2018
13:21:46
наименьший ужас

Денис
05.04.2018
13:22:00
Я смотрю вот во frege нормально сделано

Leonid
05.04.2018
13:22:18
вот бы сейчас на frege пописать

Денис
05.04.2018
13:23:07
вот бы сейчас всем полям префиксы писать

Leonid
05.04.2018
13:25:10
у меня присутсвуют

Денис
05.04.2018
13:25:10
Стоит овчинка выделки?

A64m
05.04.2018
13:25:19
первое с 8.0, второе с допотопных
да, стоит

Denis
05.04.2018
13:25:43
Ну пожалуйста: Classy lens, DuplicateRecordFields, всякие прочие заигрывания с row-polymorphism. Только префиксы все еще юзабельнее.

A64m
05.04.2018
13:26:10
я с recordWildcards использую, в основном

Leonid
05.04.2018
13:28:57
еще и snake_case приходится использовать

Google

Denis
05.04.2018
13:30:22
deriveJSON умеет принимать конвертилки для названий полей
для переделывания верблюдов в змей и наоборот

Leonid
05.04.2018
13:31:47
что самое смешное, с deriveJSON еще норм. так как TH код это вполне код. А вот Generic хрень хуже

Denis
05.04.2018
13:32:04
deriveJSON гораздо удобнее

Leonid
05.04.2018
13:32:04
Уже derive anyclass нельзя
ну я не готов писать deriveSwagger
извини

Denis
05.04.2018
13:32:57
со схематикой не надо этим дрочем заниматься ;<
(надо другим)
ну мы правда не сваггер генерим, а json-schema выгружаем

A64m
05.04.2018
13:33:49
да нормально с дупликейт филдс, в редких случаях когда не с вайлдкардами используются поля - можно и тип рекорда проаннотировать

Denis
05.04.2018
13:33:58
можно и сваггер сделать оттуда же, но мне лень

A64m
05.04.2018
13:34:11
а префиксы везде будут, в том числе и там где они не нужны

Leonid
05.04.2018
13:34:33
/me хотел бы отметить что swagger-ui говно как и всё что делают вебаны

A64m
05.04.2018
13:34:55
вот ORF и аналогичными костыльками что-то особо не пользуются пока

Leonid
05.04.2018
13:38:09
ORF бесполезный же, не?

A64m
05.04.2018
13:41:53
бесполезный - понятие растяжимое
либа вроде generic-lens полезнее, но там понятные проблемы с компиляторными тормозами (предположительно, конечно, но как иначе-то)

Denis
05.04.2018
14:18:14
fast-logger - годная штука?

Vyacheslav
05.04.2018
14:19:20
я использую logging-effect

Kirill
05.04.2018
14:31:03
у fast-logger заморочки с многопоточным логгированием