У меня есть пакет Cabal, который экспортирует тип NBT, который может быть полезен другим разработчикам. Я столкнулся с трудностями при определении экземпляра Arbitrary для своего типа, и было бы стыдно не ...
Недавно я наткнулся на этот пост о полезных ресурсах по различным аспектам функционального программирования, таким как монады, моноиды и т.д. Но вот вопрос - какую пользу может извлечь обычный программист...
Я пытаюсь понять, как преобразовать функции в нотацию point-free в Haskell. Я видел этот пример, но он сложнее, чем то, что я ищу. Мне кажется, что я понимаю логику ...
Есть много хороших вопросов и ответов о foldl, foldr и foldl 'в Haskell. Итак, теперь я знаю, что:
1) foldl ленивая
2) не используйте foldl, потому что она может взорвать стек
3) используйте foldl '...
Как я могу отказаться от динамической зависимости от libgmp и перейти от этого: linux-vdso.so.1 => (0x00007fffdccb1000)
libgmp.so.10 => /usr/lib/x86_64-linux-gnu/libgmp.so.10 (0x00007fb01afc1000)
libm.so.6 =>...
Довольно сложно заставить консольный ввод-вывод работать с символами Unicode в Haskell под Windows. Вот горестная история: (Предварительно.) Прежде чем вы даже подумаете о вводе-выводе Unicode в...
Учитывая следующие определения :import Control.Monad.ST import Data.STRef сорок _два = do x < -newSTRef (42 ::Int )readSTRef x Следующее компилируется под GHC :main = (print. runST )...
В Validations in Haskell утверждалось, что использование Writer гарантирует правоассоциативную конкатенацию. Однако этот пример, кажется, показывает обратное. Какой правильный ответ? {- # LANGUAGE ...
Здесь есть базовый вопрос о монаде, не связанный с Repa, а также несколько вопросов, специфичных для Repa. Я работаю над библиотекой, используя Repa3. У меня проблемы с получением эффективного параллельного кода. Если я сделаю...
В качестве упражнения я реализую в Haskell операцию 'cons', которая образует пару из двух значений любого типа. Реализовать необходимый тип данных достаточно просто: data Nil = Nil deriving (Eq)
data ...
Из этой ветки (Control.Monad.Cont fun, 2005 ), Томаш Зелонка представил функцию (ясно и красиво прокомментировал Томас Йегер). Томаш принимает аргумент (функцию) тела callCC ...
Я установил Snap/Haskell на рабочий сервер Ubuntu (на EC2 )и проверил -свой проект -, но как его запустить? Я имею в виду, локально, я запускаю его из командной строки :проект -имя -p 8000 Делает оснастку...
Имея некоторое представление о том, что такое класс типов Comonad в Haskell, я слышал о комонаде Store. Но, глядя на Control.Comonad.Store.Lazy, я не совсем понимаю. Что это значит? Для чего это? Я '...
Недавно я познакомился с этим кодом OCaml, который в Haskell можно записать как: data DL a = DL [a] a [a] create [] = ошибка "пустой список"
create (x: xs) = DL [] x xs next (DL pr x (h: tl)) = DL (x: pr) ...
из Как работает язык без стека? Haskell (как обычно реализуется) не имеет стека вызовов; оценка основана на редукции графа. Действительно? Это интересно, потому что, хотя я никогда не ...
Как разработчик, который только начинает изучать Haskell, я ищу проекты с открытым исходным кодом.
приложения на Haskell, которые я мог бы изучать и учиться на них. В частности, я ищу проекты с открытым исходным кодом, которые показывают: Как ...
Время от времени я наткнуться на проблему, которую я хочу выразить «пожалуйста, используйте последний аргумент дважды», например, чтобы написать стиль без точек или избежать лямбды. Например, sqr x = x * x может быть ...
На основании недавнего обмена мнениями я был убежден использовать Template Haskell для генерации некоторого кода, чтобы гарантировать безопасность типов во время компиляции. Мне нужно проанализировать имена и типы полей записи. Я понимаю, что могу ...
Я часто вижу такие программы, где Int64 является абсолютным убийцей производительности на 32-битных платформах. Мой вопрос теперь: если мне нужна определенная длина слова для моей задачи (в моем случае ГСЧ), это Int64 ...
Я хотел бы знать, какие реальные проблемы могут быть решены с помощью «методов двойственности» в функциональном программировании. Точнее, я хотел бы знать, действительно ли кто-то использовал метод двойственности, как ...
Мне нужно создать некоторый код C, а затем ссылаться на этот код через FFI. Я хотел бы использовать привязку изнутри ghci на osx. Одно из моих ограничений заключается в том, что я не могу просто передать исходные коды C в ghc ...
Я не так хорошо знаком с forall, но недавно прочитал этот вопрос:Что делает ключевое слово forall в Haskell/GHC? В одном из ответов есть вот этот пример :{-#LANGUAGE RankNTypes #-} liftTup::(...
Я хотел бы создать эту функцию, которая выбирает случайный элемент из набора: RandeLem :: (Randomgen G) => Установить A - > G -> (a, g) могут быть написаны простые реализации Listy. Например, (код ...
Я хотел попробовать и посмотреть, можно ли на самом деле использовать Haskell для разработки игр (я слышал о FRP, но не уверен, сможет ли он изящно решить те проблемы, которые, как мне кажется, существуют — я читаю http://theses ....
Первоначально я написал этот (грубый и неэффективный )метод вычисления простых чисел, чтобы убедиться, что нет никакой разницы в скорости между использованием «if -then -else» по сравнению с охранниками в...
Хорошо, я пытаюсь осмыслить IO в Haskell, и я решил написать короткое приложение, работающее с веб-страницами, чтобы сделать это. Фрагмент, на котором я споткнулся, (с извинениями перед bobince, ...
Как и в предыдущем вопросе, я пытаюсь обернуть монаду Data.Binary.Put в другую монаду, чтобы позже я мог задавать ей такие вопросы, как «сколько байтов он собирается записать» или «что является текущим ...
Возможный дубликат: избавьтесь от своего шаблона в f # Мне не хватает общих библиотек обхода и преобразования сортировки, которые у меня есть в Haskell, когда я работаю на F #. Кто-нибудь смотрел на выполнение ...
Я начинаю Haskell и искал некоторые библиотеки, в которых определены типы данных с участием "!". Пример из библиотеки байтовых строк: data ByteString = PS {- # UNPACK # -}! (ForeignPtr Word8) - полезная нагрузка ...
Предварительные замечания Я изучаю Haskell. Вопрос, на который я ответил несколько дней назад, вдохновил меня на это упражнение на Haskell, которое дало возможность поэкспериментировать с несколькими ...