Size: a a a

ПОКА ОДЕРСКИ НЕ ВИДИТ (GCерковноPRиходскую SCоLу)

2020 August 12

ᛒᚨᚱᛏᛟᛋᛋᛟ... in ПОКА ОДЕРСКИ НЕ ВИДИТ (GCерковноPRиходскую SCоLу)
Apache DOG™
От того что бизнесу хорошо ты не получишь ничего кроме зарплаты
как это поможет бизнесу
источник

ᛒᚨᚱᛏᛟᛋᛋᛟ... in ПОКА ОДЕРСКИ НЕ ВИДИТ (GCерковноPRиходскую SCоLу)
Oleg ℕizhnik
если поставить B  = C = D = Scala, получаем, что F является монадой относительно эндофунктора J когда имеются функции
def pure[A](a: J[A]) : F[A]
def bind[A, B](fa: F[A])(f: J[A] => F[B]): F[B]
прикольно, монада относительно функтора
источник

P

Pavel in ПОКА ОДЕРСКИ НЕ ВИДИТ (GCерковноPRиходскую SCоLу)
Oleg ℕizhnik
если поставить B  = C = D = Scala, получаем, что F является монадой относительно эндофунктора J когда имеются функции
def pure[A](a: J[A]) : F[A]
def bind[A, B](fa: F[A])(f: J[A] => F[B]): F[B]
вот это то что я увидел тут https://alexknvl.com/posts/relative-monads.html
источник

P

Pavel in ПОКА ОДЕРСКИ НЕ ВИДИТ (GCерковноPRиходскую SCоLу)
только тут еще есть tailRecM
источник

P

Pavel in ПОКА ОДЕРСКИ НЕ ВИДИТ (GCерковноPRиходскую SCоLу)
и вот даже глядя на этот пример не могу придумать проблему, на которую посмотрев могу сказать о, так это решается с помощью relative monad. но это каеш не совсем правильный подход
источник

Oℕ

Oleg ℕizhnik in ПОКА ОДЕРСКИ НЕ ВИДИТ (GCерковноPRиходскую SCоLу)
и выполгяются законы
def left_unit[A](fa: F[A]) : bind(fa)(pure) = fa
def right_unit[A, B](f: J[A] => F[B])(ja: J[A]): bind(pure(ja))(f) = f(ja)
def assoc[A, B, C](f: J[A] => F[B])(g: J[B] => F[C])(fa: F[A]) :
   bind(bind(fa)(f))(g)) = bind(fa)( ja => bind(f(ja))(g))
источник

Oℕ

Oleg ℕizhnik in ПОКА ОДЕРСКИ НЕ ВИДИТ (GCерковноPRиходскую SCоLу)
Pavel
и вот даже глядя на этот пример не могу придумать проблему, на которую посмотрев могу сказать о, так это решается с помощью relative monad. но это каеш не совсем правильный подход
ну например любой функтор является монадой относительно себя
источник

ᛒᚨᚱᛏᛟᛋᛋᛟ... in ПОКА ОДЕРСКИ НЕ ВИДИТ (GCерковноPRиходскую SCоLу)
Pavel
и вот даже глядя на этот пример не могу придумать проблему, на которую посмотрев могу сказать о, так это решается с помощью relative monad. но это каеш не совсем правильный подход
апоч ты вдруг начал о ней думать
источник

Oℕ

Oleg ℕizhnik in ПОКА ОДЕРСКИ НЕ ВИДИТ (GCерковноPRиходскую SCоLу)
значит, некоторые вещи, которые могут частично схлопнуть что-то там
источник

Oℕ

Oleg ℕizhnik in ПОКА ОДЕРСКИ НЕ ВИДИТ (GCерковноPRиходскую SCоLу)
недостаточно сильны
источник

Oℕ

Oleg ℕizhnik in ПОКА ОДЕРСКИ НЕ ВИДИТ (GCерковноPRиходскую SCоLу)
и мы можем ослабить требования с помощью дополнительного "отношения"
источник

Oℕ

Oleg ℕizhnik in ПОКА ОДЕРСКИ НЕ ВИДИТ (GCерковноPRиходскую SCоLу)
что такое функтор - фактически он размечает нам "субкатегорию"
источник

Oℕ

Oleg ℕizhnik in ПОКА ОДЕРСКИ НЕ ВИДИТ (GCерковноPRиходскую SCоLу)
т.е. монада будет действовать только на каком-то подмножестве
источник

Oℕ

Oleg ℕizhnik in ПОКА ОДЕРСКИ НЕ ВИДИТ (GCерковноPRиходскую SCоLу)
объектов и морфизмов
источник

Oℕ

Oleg ℕizhnik in ПОКА ОДЕРСКИ НЕ ВИДИТ (GCерковноPRиходскую SCоLу)
ну давайте сочинять, что можно такое добавить в качестве подмножества, ну например добросить какую-то инфу в объект
источник

SK

Sergey Kucherenko in ПОКА ОДЕРСКИ НЕ ВИДИТ (GCерковноPRиходскую SCоLу)
Pavel
и вот даже глядя на этот пример не могу придумать проблему, на которую посмотрев могу сказать о, так это решается с помощью relative monad. но это каеш не совсем правильный подход
relative monad это индексированный контейнер.
источник

SK

Sergey Kucherenko in ПОКА ОДЕРСКИ НЕ ВИДИТ (GCерковноPRиходскую SCоLу)
очень легко запомнить монада - контейнер, relative - индексированный
источник

SK

Sergey Kucherenko in ПОКА ОДЕРСКИ НЕ ВИДИТ (GCерковноPRиходскую SCоLу)
источник

SK

Sergey Kucherenko in ПОКА ОДЕРСКИ НЕ ВИДИТ (GCерковноPRиходскую SCоLу)
источник

SS

Saymon S in ПОКА ОДЕРСКИ НЕ ВИДИТ (GCерковноPRиходскую SCоLу)
/pidoreg@SublimeBot
источник