
Kirill
17.04.2018
19:18:58
провайдер заворачивает айпишник на zapret-3.atknet.ru
ок, впны значит

Yuuri
17.04.2018
19:19:21

Alexander
17.04.2018
19:19:52
там квейк был

Google

Alexander
17.04.2018
19:20:01
или что-то такое у кого-то в диссере

Yuuri
17.04.2018
19:20:09
Frag?

Александр
17.04.2018
19:20:11
Мы сейчас используем reflex-dom. Точнее, его порт на PureScript

Alexander
17.04.2018
19:20:16
вроде да
machines FTW
explicit FRP

Yuuri
17.04.2018
19:20:34
Я вот в threepenny-gui тыкаюсь

Александр
17.04.2018
19:21:37
У меня давно есть желание написать такое демо-приложение. Хорошее, многофункциональное. И статейки про это написать. Но тема больно сложная. Помнится, я с netwire не разобрался толком три года назад: так не компилится, этак не работает, хотя по логике должно.
Но с клоном reflex-dom (автор назвал его Specular), вроде, более-менее разобрался. Правда, это не очень-то FRP. Как сказал бы Конал Элиот, в нем не хватает денотационной семантики. Вы же в курсе про драму про Sodium и книгиу Functional Reactive Programming от Manning?

Yuuri
17.04.2018
19:25:17
Нет, что за драма?

Rigidus
17.04.2018
19:30:09
Так где читать про настоящее ФРП?

Александр
17.04.2018
19:30:46
Итак, некие товарищи нафигачили свою либу Sodium на куче языков и написали про это вышеназванную книгу. На официальном форуме книги какой-то доблестный воин завел тему, что Sodium - нифига не FRP. В лучшем случае RP. Авторы стали рьяно защищать свое детище, приводили какие-то аргументы, но тут пришел сам изобретатель FRP Конал Элиот (ну, еще Худак там тоже был, вроде). И сказал, что Sodium не FRP, так как в нем не хватает денотационной семантики, и сама идея FRP теряется. Авторы попробовали отбрехаться, мол, есть всякая там математика, а практические подходы, и с этой точки зрения лучше хоть что-то, но в продакшене. Правда, потом они все равно написали какой-то пейпер про денотационную семантику.
Сейчас найду ссылку

Google

Александр
17.04.2018
19:31:06
А книга плохая. Очень невнятная

Alexander
17.04.2018
19:33:15
так надо бы сеть и начать делать доклад, а не работу работать

Александр
17.04.2018
19:34:55
Обязательно! Но в следующий раз. Я и так доклад по С++ больше 2 месяцев готовил, а еще же один на fprog

Denis
17.04.2018
19:36:07

Александр
17.04.2018
19:36:31
Да, я там ниже назвал его по имени :)
Короче, не нашел, но вот в этом топике тема продолжается:
https://forums.manning.com/posts/list/41281.page

Alexander
17.04.2018
19:39:18
мне на fprog то тоже готовить

Александр
17.04.2018
19:39:48
Это как? Доклад уже послезавтра!

Alexander
17.04.2018
19:40:01
и?

Александр
17.04.2018
19:42:06
Как доклады за два дня можно сделать?

Shorty(Ale Chapa) Manskiy
17.04.2018
19:42:24

Александр
17.04.2018
19:42:48
Ей хорошо, она лежит. В том же состоянии, что и год назад

Alexander
17.04.2018
19:46:11

Kirill
17.04.2018
21:16:23
ну вот книгу за 2 напишешь, видимо

Alexander
17.04.2018
21:18:05
dump juick://qnikst:+haskell+хочется_странного | pretty --format json ?
--format text

A64m
18.04.2018
08:14:12
> I'm not comfortable with accepting that "whatever, that's fine too"; as much as I love this language and its ideas, a shift towards user- and beginner-friendliness is long overdue. I don't know how this will happen but I'm almost sure this won't come at the expense of its other qualities.
> I don't know how this will happen but I'm almost sure this won't come at the expense of its other qualities.
ну ну

Alexander
18.04.2018
08:15:05
это про что?

A64m
18.04.2018
08:18:05
про diagrams, но не сказал бы что тут нужен контекст

Google

Denis
18.04.2018
09:08:28
“как хотеть странного в странных микроблогах”

Dmitry
18.04.2018
09:54:10
Подскажите, пожалуйста, какой-нибудь пакет, который бы над списком записей data Rec = Rec fld1 fld2 ... fldn позволял бы выполнять аггрегирование, типа, как в SQL. select sum(rec1), rec15 group by rec15 from myList.
Существует такое?

Anton
18.04.2018
09:55:00
Но я похоже неправильно понял вопрос, opaleye генерит sql для бд

Dmitry
18.04.2018
09:56:16
Не, мне надо просто обычный haskell-список сворачивать по разным полям
Просто задача похожа на SQL-ное аггрегирование

kana
18.04.2018
09:57:15

A64m
18.04.2018
09:59:30

Dmitry
18.04.2018
09:59:57
Ну можно и им, да.
Просто думал, что-то более специфическое есть.
У меня получается просто вот такое: map (\rs -> (rec15 $ head rs, sum $ map rec1 rs)) $ groupBy (\r1 r2 -> rec15 r1 == rec15 r2) $ orderBy rec15 myList. Не сказал бы, что красиво.

Dmitry
18.04.2018
10:05:39
Data.Map.fromListWith

Dmitry
18.04.2018
10:05:53
А, вариант

anton
18.04.2018
10:15:52
Подскажите пожалуйста, а можно в Setup.hs кабала узнать директорию куда пакет устанавливается? и туда скопировать архив, там распаковать? я так хотел бы статику сайта завернуть в пакет
очень не хочется по одному файлу в data-files выписывать их

kana
18.04.2018
10:18:59
он правда на пару работает, будут вложенные пары

Ilya
18.04.2018
10:20:32
Я хотел создать список случайной длины из одинаковых чисел, после чего применить к списку какую-то функцию, скажем map (+1)
Написал я это так:
map (+1) <$> flip replicate 5 <$> randomRIO (1, 10)
При это я совсем забыл, что у <$> левая ассоциативность, а не правая, как у $.
Так что вроде как код ошибочный — он будет выполняться слева направо, тогда как подразумевалось справа налево.
Однако он не только прошёл типизацию, но ещё и правильно работает. Почему?:)

Aleksey
18.04.2018
10:21:49
Потому что у (->) тоже реализован функтор

Ilya
18.04.2018
10:22:08

Google

Ilya
18.04.2018
10:22:13
а всё же забавная фишка

Admin
ERROR: S client not available

Denis
18.04.2018
10:24:59
у (->) r

kana
18.04.2018
10:25:02

Ilya
18.04.2018
10:25:40
какая-то недоассоциативность получилось

Aleksey
18.04.2018
10:25:41
Ну и т.к.
> :t map (+1) <$> flip replicate 5
map (+1) <$> flip replicate 5 :: Num b => Int -> [b]
то "типизацию проходит"

Dmitry
18.04.2018
10:26:10
Да, спасибо, так лучше

kana
18.04.2018
10:26:39
чет телега лагает у меня

Dmitry
18.04.2018
10:26:42
Не видно!

Aleksey
18.04.2018
10:26:54
Лагает, да

Dmitry
18.04.2018
10:27:30
вместо (&&&) теперь, вроде, bimap
ой, вру

kana
18.04.2018
10:28:00
хм, это разные вещи
&&& :: (a -> b) -> (a -> c) -> (a -> (b, c))

Dmitry
18.04.2018
10:28:46
да, bimap это (***)

kana
18.04.2018
10:30:11
у тебя тут по моему только rec15 и используется, можно сразу смапать в него
map (head &&& sum) . group . sort . map rec15

Dmitry
18.04.2018
10:31:28
Не, rec1 ещё

kana
18.04.2018
10:31:55
а, это я ошибся в своем решении

Dmitry
18.04.2018
10:31:57
f = map (rec15 . head &&& sum . map rec1)
Ну я уже примерно так и написал, спасибо.

Google

Alexander
18.04.2018
10:39:34

A64m
18.04.2018
10:42:31
в GHC же есть (не совсем понятно зачем, правда) даже расширенный синтаксис для лист компрехеншонс, не очень популярный, я даже не вспомнил как называется экстеншн
вспомнил только как пейпер про него назывался https://www.microsoft.com/en-us/research/wp-content/uploads/2007/09/list-comp.pdf

Alexander
18.04.2018
10:44:07
а экстеншн жив ещё?

Denis
18.04.2018
10:45:14
жив

Dmitry
18.04.2018
10:45:49
Во, круть! Надо брать.

A64m
18.04.2018
10:46:13
куда он денется?

Denis
18.04.2018
10:48:18
Во, круть! Надо брать.
вот в тех же сорсах из книги beginning haskell как раз была глава про это расширение
https://github.com/Apress/beg-haskell/blob/master/chapter3/src/Chapter3/Comprehensions.hs#L13-L19

Dmitry
18.04.2018
10:49:34
Ваще отвал башки, я скоро выйду замуж за Haskell, блин!

A64m
18.04.2018
10:50:25
наконец-то экстеншон нашел своего первого пользователя

Anatolii
18.04.2018
10:51:06
я думаю spj с вадлером попользовались им чуток