
Alex
10.12.2017
16:08:32
надо на идрис портануть
о там будет грамота
правда без экстенсиональности мало чего докажешь, но можно постулировать

Alexandr
10.12.2017
16:11:39
Упускаю что-то... монаду нельзя рассматривать как объект с flatmap как морфизм?

Google

Alex
10.12.2017
16:13:22
ну это эндофунктор т.е. конструктор типа + 2 морфизма

Alexandr
10.12.2017
16:15:42
Монада - конструктор типа? Ок, а результат работы конструктора - это обеъект?

sherzod
10.12.2017
16:17:15

Robert
10.12.2017
16:31:23

sherzod
10.12.2017
16:31:50
это было неизбежно

Robert
10.12.2017
16:31:55
это было неизбежно
Морфизм - стрелка, может быть любым отношением между объектами категории или категориями

_
10.12.2017
16:33:02
А это реально нужно знать, чтобы использовать flatMap() ?
))

Robert
10.12.2017
16:33:17

_
10.12.2017
16:33:24
Зачем?

Robert
10.12.2017
16:34:04
Чтобы эффективно использовать

sherzod
10.12.2017
16:34:30
мне кажется это чаще используют чтобы эффективно запугивать

Google

sherzod
10.12.2017
16:34:47
ну других использований не наблюдал

Robert
10.12.2017
16:35:28
Проще понять если знать что и откуда
Это же о том как люди думают
Вот эти все изоморфизмы карри-говарда-ламбека
Люди в разных степях открывают одинаковые вещи
Круто же ну

sherzod
10.12.2017
16:38:47
да ну, скукатища

Robert
10.12.2017
16:39:03

sherzod
10.12.2017
16:41:29
скучно зачитывать определения и нагромождать термины. круто быть понятным

Robert
10.12.2017
16:42:25
У меня есть блог, там что-то есть
Вроде понятно
“Функторы” https://medium.com/@gubinrobert/%D1%84%D1%83%D0%BD%D0%BA%D1%82%D0%BE%D1%80%D1%8B-f9f826539a0d

sherzod
10.12.2017
16:43:55
давайте ссылку, почитаем. можно ещё её в профиле прописать, в поле Bio

_
10.12.2017
16:44:21
Ну композиция и так понятно же

Robert
10.12.2017
16:46:06
Это все применяется плстоянно

Google

_
10.12.2017
16:46:28
Не, пример кода в смысле

Robert
10.12.2017
16:46:39
В блог, там есть

_
10.12.2017
16:47:23
Ну я скала коллекции, futures, actors без этого знания применяю, либо оно достигнуто эмпирически

Robert
10.12.2017
16:48:09

_
10.12.2017
16:50:12
Ну вот в блоге там не из реальной жизни пример

Robert
10.12.2017
16:51:23
=)

_
10.12.2017
16:51:37
Ну по ссылке вашей)
Там пара примеров функторов

Robert
10.12.2017
16:52:30
Всё так, но смысл поста был в том чтобы разобрать нутря функтора

_
10.12.2017
16:52:34
Я не говорю, что это все не нужно, связи с реальным кодом просто не чувствую
Ок, разобрали, а как применить это знание?)

Robert
10.12.2017
16:54:04
У вас когда-нибудь было Future[Either[Error, List[User]]]?

_
10.12.2017
16:54:23
Ага
Чудовищно

Robert
10.12.2017
16:54:50
Вот, вместо того чтобы делать вложенные мапы флэтмапв
Можно использовать монад трансформеры
Или композицию функторов

Google

Robert
10.12.2017
16:55:26
И это нормальная ситуация когда подобный жирный тип

_
10.12.2017
16:55:32
Можно пример?)

Dmitry
10.12.2017
16:56:53

Igor
10.12.2017
16:57:34

Robert
10.12.2017
16:58:16

Dmitry
10.12.2017
16:58:48

_
10.12.2017
16:59:30

Robert
10.12.2017
16:59:43

Admin
ERROR: S client not available

Dmitry
10.12.2017
17:00:22
в этом случае да
если такое значит беда в архитектуре

Igor
10.12.2017
17:04:58

Dmitry
10.12.2017
17:05:06
на героин лучше
tagless

Robert
10.12.2017
17:06:10
Кажется где-то должна быть черта абстрагироваться за которую опасно для здоровья

Dmitry
10.12.2017
17:08:12
https://www.beyondthelines.net/programming/introduction-to-tagless-final/
ну фри монады ок
но лысый на них ругается

Google

Dmitry
10.12.2017
17:08:40
не просто так конечно
фри аппликативы там все дела

Igor
10.12.2017
17:09:16

Robert
10.12.2017
17:10:38

Dmitry
10.12.2017
17:11:14
с них же как я помню весь фри хайп начался
потом монады
а потом опа, life after free

Robert
10.12.2017
17:12:02
Взрывы стека и вот это всё
Хотя эти же проблемы все решили +-

Dmitry
10.12.2017
17:13:08
https://youtu.be/A-lmrvsUi2Y

Robert
10.12.2017
17:13:34

Dmitry
10.12.2017
17:13:44
ща слайды еще найду
https://www.slideshare.net/jdegoes/postfree-life-after-free-monads

Mikhail
10.12.2017
17:23:33
А что делать когда есть
Future[Option[List[User]]]
а нужно
Option[Future[List[User]]]
т.е. от "
В некотором будущем (возможно уже сейчас - но это не точно) будет информация о том, будет ли у нас список пользователей или нет
" перейти прямо сейчас к "
прямо сейчас мы хотим знать будет ли у нас список в некотором будущем или нам нет смысла ждать этого будущего, потому что и так понятно, что ничего не светит
" (это конечно слегка упрощенно и без указания различных нюансов. например что ожидание значения может завершиться неудачей и т.д. и т.п. ) ... мне кажется, что можно джуном к синьору за еду напроситься, чтобы тебе подробнее обьяснил, что не так с подобными желаниями)

Robert
10.12.2017
17:25:16

sherzod
10.12.2017
17:25:34

Igor
10.12.2017
17:27:49
Точно, просто хотел акцентировать внимание на порядке вложения монад.

Mikhail
10.12.2017
17:30:19
думаю тут был акцент не на Future
и ты думаешь, что это сильно что-то меняет? нисколько. именно этот пример очень хорошо показывает, что порядок вложения монад можно изменить далеко не всегда.

sherzod
10.12.2017
17:30:55
ну зачем куда-то посылать. объясните сами)

Sergey
10.12.2017
17:31:12

sherzod
10.12.2017
17:31:24
linkedin потому что

Dmitry
10.12.2017
17:31:26
linkedin