Size: a a a

2021 October 01

P

Purple in ФП
источник

K

Kir in ФП
Да. Вызывается сцепка then (или её ещё зовут Bind/>>= иногда)
источник

K

Kir in ФП
Оно же "присоединить коллбек"
источник

T

The Pressbraker in ФП
Блин на этом же можно сделать игру
источник

T

The Pressbraker in ФП
Все пошёл читать
источник

T

The Pressbraker in ФП
Всем спасибо !
источник

K

Kir in ФП
Не за что!
источник

T

The Pressbraker in ФП
Получается монада это просто одна большая функция, состоящая из множества мелких функций , поведение которых можно менять извне, проверяя какие то данные в промежутках между вызовами функций
источник

T

The Pressbraker in ФП
А она не хранит в себе данные?
источник

E

Eugene in ФП
монады — это шаблоны вычислений
источник

T

The Pressbraker in ФП
Можно ли монаду назвать супер функтором
источник

T

The Pressbraker in ФП
Или это просто конвейер и данные там не сохраняются
источник

AG

Alex Gryzlov in ФП
и коку
источник

AV

Andrey Vlasov in ФП
Почитайте исходники Reader, Writer, State, станет понятно
источник

K

Kir in ФП
Монада - это интерфейс. Оно требует, чтобы был объявлен метод
M<B> Then(Func<A, M<B>> callback)
источник

AG

Alex Gryzlov in ФП
плюс законы
источник

K

Kir in ФП
В псевдокоде
type State s a = s -> (s, a)

instance Monad (State s) where
 ma >>= amb = \s0 ->
   let (s1, a) = ma(s0)
   let (s2, b) = amb(a)(s1)
   (s2, b)

Т.е., монада State не хранит стейт, это функция из старого стейта в (новый стейт и результат)
источник

А

Алексей ayaye :)... in ФП
как чистая функция может хранить данные?
источник

K

Kir in ФП
Человек из плюсов пришёл, предлагаю обождать с чистотой
источник

T

The Pressbraker in ФП
Функтор хранит же
источник