2
ответа

Использовать нотацию без монад: возможно?

У меня есть тип с сохранением состояния с операторами >> и >> =, который является почти монадой. Предполагаемое использование - создание кода для другого языка, и наличие доступной нотации будет очень ...
вопрос задан: 22 June 2011 08:39
2
ответа

Строг mapM в Haskell? Почему эта программа получает переполнение стека?

Следующая программа завершается правильно: Система импорта. Случайный randomList = mapM (\_-> getStdRandom (randomR (0, 50000:: Интервал))) [0.. 5000] основной = делают randomInts <-randomList печатают $, берут 5...
вопрос задан: 22 April 2011 18:14
2
ответа

Разве mapM Haskell не ленив?

ОБНОВЛЕНИЕ: Хорошо этот вопрос становится потенциально очень простым. q <-mapM возврат [1..], Почему это никогда не возвращается? mapM лениво не имеет дело с бесконечными списками? Код ниже зависает...
вопрос задан: 20 April 2011 22:50
2
ответа

Как я могу использовать parMap с одноместной функцией?

У меня есть одноместная функция getRate: getRate:: Строка-> IO Дважды я хотел бы отобразить эту функцию по списку Строки. Обычно, я просто сделал бы: mapM getRate ["нечто", "панель"], но начиная с каждого...
вопрос задан: 18 April 2011 22:41
2
ответа

Scala, эквивалентный монадам Haskell

У меня был некоторый опыт в Haskell и в настоящее время изучении Scala. Задаюсь вопросом, существует ли что-то эквивалентное Монадам в Scala??
вопрос задан: 18 April 2011 22:40
2
ответа

Лучше использовать монаду состояния или передать состояние рекурсивно?

Я просто изучаю Haskell и пытаюсь выяснить самый идиоматический способ реализовать алгоритм угла обзора. Демонстрационный код я нашел использование монадой состояния, но это кажется более простым мне (я просто...
вопрос задан: 17 April 2011 18:53
2
ответа

Haskell: не может использовать “карту putStrLn”?

Я имею список строк и попробовал это: ls = ["банан", "манго", "оранжевое"] основной =, отображают PutStrLn list_of_strings, Который не работал, и я не могу понять почему. ghc печатают-list.hs печать-...
вопрос задан: 17 April 2011 10:14
2
ответа

В чем разница между разными порядками одних и тех же преобразователей монад?

Я пытаюсь определить API, чтобы выразить определенный тип процедуры в моей программе. newtype Процедура a = {runProcedure ::? } Есть состояние, состоящее из сопоставления идентификаторов с записями: type ...
вопрос задан: 26 February 2011 18:58
2
ответа

Какой смысл того, чтобы использовать монады в интерпретаторе?

Я недавно обнаружил этот небольшой scala пример под названием Простой интерпретатор с помощью монад: возразите simpleInterpreter {класс M случая (значение: A) {определение связывают [B] (k: => M [B]): M [B] = k (значение)...
вопрос задан: 20 February 2011 13:22
2
ответа

Монады и актеры

Я пытался найти что-нибудь, что обсуждает, когда следует отдавать предпочтение использованию монад. по актерам (в сценариях параллелизма), но я ничего не нашел. В частности, я задаюсь вопросом об использовании ...
вопрос задан: 7 February 2011 20:21
2
ответа

Функтор / Аппликативные экземпляры для State в Haskell

Прочитав (и прочитав некоторые разделы) статью Вадлера о монадах, я решил более внимательно изучить статью, определив функтор и аппликативные примеры для каждой из монад, которые он описывает ...
вопрос задан: 20 August 2010 18:59
2
ответа

Используйте для монады идентификационных данных в Clojure

Я читал превосходное введение в монады для программистов Clojure. Статья иллюстрирует, что монада Идентификационных данных функционально эквивалентна Clojure, позволил и что Последовательность/Список...
вопрос задан: 16 August 2010 04:23
2
ответа

Реализация Haskell-MaybeMonad в F# - как мы можем получить это ленивое?

мы пытаемся создать образец Haskell-MaybeMonad из http://www.haskell.org/all_about_monads/html/maybemonad.html в F#. Идея состоит в том, чтобы искать mailaddress в двух словарях. Если один из...
вопрос задан: 1 July 2010 11:06
2
ответа

Почему нет ничего похожего на IMonad < T > в предстоящем .NET 4.0

... со всеми этими новыми (и не такими уж новыми, если считать IEnumerable) связанными с монадами вещами? интерфейс IMonad < T > {SelectMany / Bind (); Возвращение / Unit (); } Это позволило бы написать функции, которые ...
вопрос задан: 8 May 2010 23:20
2
ответа

Я могу преобразовать этот асинхронный сетевой API Java в одноместное представление (или что-то еще идиоматическое)?

Мне дали API Java для соединения с и передачи по собственной шине с помощью основанного на обратном вызове стиля. Я в настоящее время реализовываю приложение подтверждения концепции в scala, и я пробую...
вопрос задан: 25 April 2010 18:22
2
ответа

То, почему этот код Или-монады разве вводит, не проверяет?

Монада экземпляра (Любой a), где возврат = сбой Left = Right Left x>> = f = f x Right x>> = _ = Right x этот код frag в 'baby.hs' вызвал ужасную компиляцию error:...
вопрос задан: 7 April 2010 15:44
2
ответа

Значения в монадах, вложенных в структурах данных?

Предположим, что в программе Haskell у меня есть некоторые данные, тип которых - что-то как: IO [IO (Интервал, Строка, Интервал)], или IO [(Интервал, Строка, Интервал IO)], или [(Интервал, Строка, Интервал IO)], но я имею чистый...
вопрос задан: 21 July 2009 18:02
2
ответа

Haskell: Как передать содержание по каналу одного дескриптора в другого в режиме реального времени

Я пишу программу, которая выполняет внешний подпроцесс в интерактивном режиме, и мне нужно содержание выходного дескриптора, который будет произведен к stdout, как только это доступно. Я попробовал что-то вроде этого:...
вопрос задан: 22 March 2009 21:02
1
ответ

Монада - это просто моноид в категории эндофункторов, в чем проблема?

Кто первым сказал следующее? Монада - это просто моноид в категории эндофункторов, в чем проблема? И на менее важной ноте, это правда, и если да, то могли бы вы дать объяснение (...
вопрос задан: 9 November 2018 15:22
1
ответ

Как обновить части штата в государственной монаде?

У меня есть тип, который я хотел бы использовать как часть государственной монады: {- # LANGUAGE TemplateHaskell # -} import Control.Lens data SomeState = SomeState {_int :: Int, _string :: String} makeLenses '' .. ,
вопрос задан: 14 July 2018 01:06
1
ответ

Является ли mfix for Возможно невозможно быть нетривиально общим?

Поскольку Nothing & gt; & gt; = f = Nothing для каждого f, для mfix подходит следующее тривиальное определение: mfix _ = Nothing Но это не имеет практического применения, поэтому мы имеем следующее неточное определение: ...
вопрос задан: 13 July 2018 12:16
1
ответ

Scalaz повторяет: «Поднимает» EnumeratorT для соответствия «IterateeT» для «большей» монады

Если у меня есть EnumeratorT и соответствующий IterateeT, я могу запустить их вместе: val en: EnumeratorT [String, Task] = EnumeratorT.enumList (List ("a", "b", "c")) val it: IterateeT [String , Task, Int] = ...
вопрос задан: 1 November 2017 07:21
1
ответ

Существует ли стандартный рабочий процесс параметров в F#?

Есть ли опция (возможно) wokflow (monad) в библиотеке standrd F#? Я нашел дюжину ручных реализаций (1, 2) этого рабочего процесса, но я не очень хочу вводить нестандартные и ...
вопрос задан: 23 May 2017 12:18
1
ответ

F #: Есть ли способ расширить список ключевых слов монад?

Внутри монады F #, если вы скажете let !, компилятор преобразует это в член Bind, который вы определили в построителе монад. Теперь я вижу, что есть монады запросов, как показано здесь, в MSDN, где вы можете сказать: ...
вопрос задан: 19 December 2016 00:22
1
ответ

Как работает ArrowLoop? Кроме того, mfix?

Теперь мне довольно удобно с остальной частью стрелочного оборудования, но я не понимаю, как работает петля. Мне это кажется волшебным, и это плохо для моего понимания. У меня тоже проблемы с пониманием mfix. ...
вопрос задан: 5 August 2014 19:12
1
ответ

Подсказки для более изящного кода с монадами?

Я наконец овладел о том, как использовать монады (не знайте, понимаю ли я их...), но мой код никогда не очень изящен. Я предполагаю, от отсутствия власти как все те функции на Управлении. Монада может действительно...
вопрос задан: 29 April 2012 20:12
1
ответ

Обессахаривание до-нотации для монад

Изучая Haskell, я понимаю, что нотация do - это просто синтаксический сахар: a = do x <- [3..4] [1..2] return ( x, 42) Переводится в a = [3..4] >> = (\ x -> [1..2]> & ...
вопрос задан: 6 November 2011 11:07
1
ответ

Что такое контекст в классе типа мультипараметра Haskell

В главе 15 Реального мира Haskell определяется класс типа: класс (Монада m) => MonadSupply s m | m-> s, где Пара абзацев позже, это говорит, что>> = и возврат не должны быть определены...
вопрос задан: 20 April 2011 22:49
1
ответ

Монада продолжения “интерфейс”

Монада состояния "соединяет интерфейсом" с классом MonadState s m, где доберитесь:: m s помещенный:: s-> m () (+ возвращают и связывают) позволяет создавать любое возможное вычисление с монадой состояния, не используя состояние...
вопрос задан: 19 April 2011 01:38
1
ответ

Как практичный это должно встроить ядро языка с effectful функциональным пространством (как ML) в Haskell?

Как Moggi предположил 20 лет назад, effectful функциональное пространство-> языков как ML может быть разложено на стандартное общее функциональное пространство => плюс сильная монада T для получения эффектов.->...
вопрос задан: 5 August 2010 01:20