Монады могут делать много удивительных, сумасшедших вещей. Они могут создавать переменные, содержащие суперпозицию значений. Они могут позволить вам получить доступ к данным из будущего до того, как вы их вычислите. Они могут позволить вам...
Я работаю над книгой Land of Lisp in F # (да, странно, Я знаю). В своем первом примере текстового приключения они используют мутацию глобальной переменной, и я бы хотел ее избежать. Моя монада-фу слабая, ...
Вот способ решения задачи Эйлера 43 (пожалуйста, дайте мне знать, если это не даст правильного ответа). Есть ли монада или какой-либо другой синтаксический сахар, который мог бы помочь в отслеживании notElem...
Я пытаюсь использовать HSlogger, чтобы получить некоторую информацию о моей программе. Поэтому я добавляю следующую строку в свою функцию import Data.Word
импортировать квалифицированные Data.ByteString как B
импорт квалифицированных данных ....
В качестве примитивной версии Optional * Java 1.8 предоставляет OptionalInt, OptionalLong и OptionalDouble. Но я не могу найти эквивалентный класс OptionalBoolean. Есть ли технические причины против ...
как должна работать монада параметров? Я просматриваю scala api, и есть пример (я имею в виду второй). Из-за того, как работает понимание, если None возвращается из request.getParameter, ...
Я понимаю (более или менее) стандартные монады, такие как Option (может быть), List, State, Reader, Writer и т. Д. Они универсальны и могут быть найдены в любом приложении. Другими примерами универсальных монад являются ...
Я новичок в Haskell и постепенно начинаю понимать, что что-то не так с существованием сбоя Monad. Real World Haskell предостерегает от его использования («Еще раз, мы рекомендуем ...
Я пишу код (сэмплер MCMC Metropolis-Hastings) который будет использовать генератор случайных чисел и на его основе изменять массив и, возможно, другие структуры. Моя первоначальная идея состояла в том, чтобы использовать ...
В одном обсуждении я слышал, что интерфейс Applicative некоторых парсеров реализован иначе, более эффективно, чем их интерфейс Monad. Причина в том, что с Applicative мы знаем все «эффекты» ...
Я еще не монад-джедай, но имею базовое представление о них. Теперь я прочитал некоторые статьи, в которых упоминаются «внутренняя» и «внешняя» монада, и мне интересно, что это значит. (Ссылки на) примеры кода будут...
Ниже я попытался создать очень простой интерпретатор, который переведен из Java-версии программы, описанной в главе 1 «Современная реализация компилятора на Java» Эндрю В. Appel, и ...
У меня есть функция, которая может возвращать нулевое значение: def func (arg: AnyRef): String = {...}, и я хочу добавить результат в список, если он не нулевой: ... val l = func (o ) список if (l! = null): + = l .....
Итак, у меня есть что-то вроде: [IO Blah, IO Blah, IO Blah], и я действительно хочу просто список действий ввода-вывода, как мне это сделать? P.S.: Да, я работаю в функции ввода-вывода.
I ' Я пытаюсь понять концепцию монад, и я хочу знать, является ли этот код реализацией этой концепции (в JavaScript). У меня есть функция M, которая возвращает новый объект с установленным методом ...
Одна из проблем с преобразователями монад, которую я обнаружил, - необходимость переноса операций в правую монаду. Отдельный подъем здесь и там неплохо, но иногда есть функции, которые выглядят как ...
Нужно ли иметь доступ к внутренней структуре монаду написать преобразователя монады? Например, :я бы хотел иметь преобразователь GetT -для монады Get из Data.Binary.Get, но это...
Допустим, мы хотим использовать ReaderT [(a, b)] над монадой Maybe, а затем мы хотим выполнить поиск в списке. Теперь простой и не слишком необычный способ сделать это: первая возможность найти a = ReaderT (...
Допустим, у меня есть несколько функций: f :: a -> Maybe a
g :: a -> Может быть
h :: a -> Может быть a И я хочу составить их следующим образом: если f не возвращает ничего, вычислите g. Если g возвращает ...
Тони Моррис выступил с этим фрагментом. Он использует монаду ReaderWriterState для предоставления контролируемого доступа для чтения/записи к неявному контексту. Это имеет смысл. Как использовать код? Я хотел бы...
Мне нужно преобразовать этот код C ++ класса A {public: int x_A; void setX_A (int newx) {x_A = newx; } void printX_A () {printf ("x_A - это% d", x_A); }
}; класс B: ...
Set, подобно [], имеет совершенно определенные монадические операции. Проблема в том, что они требуют, чтобы значения удовлетворяли ограничению Ord, и поэтому невозможно определить return и > > = без ...
Заранее извините за этот длинный пост. Я пишу управляемое событиями приложение на Haskell, поэтому мне нужно хранить несколько функций обратного вызова для дальнейшего использования. Я хотел бы, чтобы такие обратные вызовы были: ...