Результаты поиска по запросу "monads"

6 ответов

Scala: как понять метод flatMap в Try?

Метод FlatMap для Success реализован так: def flatMap[U](f: T => Try[U]): Try[U] = try f(value) catch { case NonFatal(e) => Failure(e) }Я вроде понимаю, что делает этот метод, это помогает нам избежать написания большого количества ...

4 ответа

Как можно моделировать недетерминизм с помощью монады List?

Может ли кто-нибудь объяснить (лучше на примере на простом английском языке), что может сделать монада списка для моделирования недетерминированных вычислений? А именно, в чем проблема и какое решение может предложить монада списка.

1 ответ

, и я могу просто перейти к потоку, который будет использовать мой блок IO.async, тогда зачем мне использовать IO.async? Например, я не могу просто заменить вызовы IO.async блокированием вызовов IO.apply?

од Scala для кошек, использующийIO Monad [https://github.com/typelevel/cats-effect]: import java.util.concurrent.{ExecutorService, Executors} import cats.effect.IO import scala.concurrent.{ExecutionContext, ExecutionContextExecutor} ...

ТОП публикаций

2 ответа

Я, вероятно, облажался, учитывая, что я набрал все это с манжеты и переименовал альфа примерно на полпути, чтобы было легче увидеть переписанные тексты.

зные вопросы я нашел подсказки в комментариях относительно использования(->) пример монад, например для реализации бессмысленного стиля. Что касается меня, это слишком абстрактно. Хорошо, я видел экземпляры Arrow на(->) и мне кажется, что(->) ...

3 ответа

Государственная монада, последовательности случайных чисел и монадический код

Я пытаюсь понять Государственную Монаду, и с этой целью я хотел написать монадический код, который генерировал бы последовательность случайных чисел, используя линейный конгруэнтный генератор (вероятно, не очень хорошо, но я собираюсь просто ...

5 ответов

Как написать монаду, которая печатает «шаг i из N» при выполнении каждого оператора в монаде?

Я даже не уверен, что это возможно в любой монаде; это нарушает законы монады? Но кажется, что-то, что должно быть возможно в той или иной конструкции. Конкретно есть ли способ иметь что-то, что я могу написать что-то вроде do someOp () ...

3 ответа

Есть два способа, помимо двух IORef, сделать это, но вам, безусловно, нужно больше, чем последний предложенный вами тип, который не позволяет вам изменять значения, с которыми связаны имена, в лексической области видимости. Гугл "проблема funargs" для множества интересных предысторий.

отаю черезНапишите себе схему за 48 часов [http://en.wikibooks.org/wiki/Write_Yourself_a_Scheme_in_48_Hours](Я до 85 часов), и я получил часть оДобавление переменных и ...

3 ответа

Итак, для функции, которая получает один отложенный элемент, эта функция listBind возвращает новую функцию, которая принимает массив значений и использует их для возврата другого списка значений внутри отложенного элемента.

овленэто [http://blog.jcoglan.com/2011/03/11/promises-are-the-monad-of-asynchronous-programming/] (превосходно) обсуждение использования Promises в javascript, я пытаюсь выяснить, как я мог бы использовать Deferred для объединения вместе ...

3 ответа

или используя msum:

тим, у меня есть ряд функций: f :: a -> Maybe a g :: a -> Maybe a h :: a -> Maybe aИ я хочу составить их следующим образом: если f ничего не возвращает, вычислите g. Если g ничего не возвращает, вычислите h. Если кто-то из них вычислит Just a, ...

3 ответа

Тип возврата в блоке do

Я пытаюсь понять Монады в Хаскеле, и во время моих бесчисленных экспериментов с кодом я столкнулся с этой вещью: f2 = do return "da"и тот факт, что он не хочет компилировать с огромной ошибкой относительно типа. Я думаю, что единственная важная ...