Size: a a a

2020 May 24

YS

Yan Shkurinskiy in fprog_spb
При конкатенации
источник

MK

Maxim Koltsov in fprog_spb
похоже
источник

AV

Alexander Vershilov in fprog_spb
Вроде тот же принцип, но лучше если меня поправят или подтвердят
источник

YS

Yan Shkurinskiy in fprog_spb
Значит я вроде +/- понимаю это
источник

YS

Yan Shkurinskiy in fprog_spb
Но не сильно
источник

MK

Maxim Koltsov in fprog_spb
можешь статью reflection without remorse почитать
источник

AV

Alexander Vershilov in fprog_spb
++
источник

YS

Yan Shkurinskiy in fprog_spb
Maxim Koltsov
можешь статью reflection without remorse почитать
уже гуглю! спасибо
источник

АГ

Александр Гранин... in fprog_spb
Free монады, по сути, - это такая структура данных, куда ты можешь положить отдельную операцию из своего языка, и еще продолжение, где будут лежать все остальные операции. Если ты определил свой сценарий из 1 операции, то в продолжении будет стоять "заглушка". У обычной Free монады это значение Pure. Если ты взял две операции и связал их через bind, этот bind положит одну операцию в продолжение другой. У обычной Free монады это значение Bind.

haskell
data Free f a
 = Bind f (Free f a)
 | Pure a
источник

AV

Alexander Vershilov in fprog_spb
Yan Shkurinskiy
уже гуглю! спасибо
источник

АГ

Александр Гранин... in fprog_spb
В обычной Free при связывании двух монадических цепочек получается, что функции bind нужно пройти всю первую цепочку, чтобы добраться до самого глубокого "терминального" Pure, и положить в этот continuation вторую цепочку
источник

MK

Maxim Koltsov in fprog_spb
хм я думал это не олег
источник

АГ

Александр Гранин... in fprog_spb
Так образуется квадратичная сложность
источник

YS

Yan Shkurinskiy in fprog_spb
Спасибо)
источник

AV

Alexander Vershilov in fprog_spb
Техника общая, она и в стриминговых библиотеках хорошо зашла
источник

АГ

Александр Гранин... in fprog_spb
У Church Encoded другая внутренняя структура, ей не нужно, чтобы bind проходил насквозь первую цепочку операций
источник

YS

Yan Shkurinskiy in fprog_spb
Александр Гранин
Так образуется квадратичная сложность
Ну да, как конкатенация при длинном первом списке
источник

LO

Leonid 🦇 Onokhov in fprog_spb
Ишь как обрадовался то
источник

АГ

Александр Гранин... in fprog_spb
Yan Shkurinskiy
Ну да, как конкатенация при длинном первом списке
Да, именно
источник

YS

Yan Shkurinskiy in fprog_spb
Ну всё, я понял фри монады С:
источник