LINUX.ORG.RU

История изменений

Исправление monk, (текущая версия) :

Неправильно! Монада в программировании - это абстракция связывания вычислений.

Это где такое определение? Интуитивное определение — штука с состоянием, позволяюющая указывать вычисления изменяющие это состояние.

И в этом смысле

thirdConfigs bd = do
  bd1 <- nextConfigs bd
  bd2 <- nextConfigs bd1
  bd3 <- nextConfigs bd2
  return bd3

Вполне себе описание последовательности состояний списка. Или list comprehension (это к вопросу «зачем полседовательность состояний списку?»).

Кстати, аналогично, Iterable в некоторых языках определён для всех классов. Действие по-умолчанию — перебор полей объекта. Тоже будешь говорить, что это неверно и конструкция foreach (field in rabbit) не должна существовать?

Исходная версия monk, :

Неправильно! Монада в программировании - это абстракция связывания вычислений.

Это где такое определение? Интуитивное определение — штука с состоянием, позволяюющая указывать вычисления изменяющие это состояние.

И в этом смысле

thirdConfigs bd = do
  bd1 <- nextConfigs bd
  bd2 <- nextConfigs bd1
  bd3 <- nextConfigs bd2
  return bd3

Вполне себе описание последовательности состояний списка. Или list comprehension (это к вопросу «зачем полседовательность состояний списку?»).

Кстати, аналогично, Iterable во некоторых языках определён для всех классов. Действие по-умолчанию — перебор полей объекта. Тоже будешь говорить, что это неверно и конструкция foreach (field in rabbit) не должна существовать?