0
ответов

Требуется ли доступ к внутренней структуре монады для преобразователя монады?

Нужно ли иметь доступ к внутренней структуре монаду написать преобразователя монады? Например, :я бы хотел иметь преобразователь GetT -для монады Get из Data.Binary.Get, но это...
вопрос задан: 28 November 2012 14:08
0
ответов

Итерация Haskell: простой рабочий пример удаления конечных пробелов

Я пытаюсь понять, как использовать библиотеку итераций с Haskell. Все статьи, которые я видел до сих пор, похоже, сосредоточены на создании интуитивного понимания того, как можно построить итераторы, что полезно, ...
вопрос задан: 27 November 2012 15:15
0
ответов

Использование стандартных библиотек дженериков Haskell для типизированных типов -изоморфизмов

Есть несколько библиотек дженериков с многочисленными перекрывающимися модулями только на платформе Haskell (syb, Data.Typeable, Data.Data, GHC.Generics ), но у меня возникли проблемы с очень простым...
вопрос задан: 24 November 2012 16:23
0
ответов

zipWith функция в Haskell

ghci> zipWith '(zipWith' (*)) [[1,2,3], [3,5,6], [2,3, 4]] [[3,2,2], [3,4,5], [5,4,3]] Функция zipWith 'use function' * 'и параметры после нее для получения возврата. Но в этом случае , как функция ...
вопрос задан: 21 November 2012 21:44
0
ответов

Множественная аутентификация в Yesod?

Мне нужно, чтобы в моем приложении требовалось несколько типов аутентификации; в частности: некоторые части приложения требуют аутентификации в Dropbox, а некоторые части требуют аутентификации на основе электронной почты, например, идентификатора браузер
вопрос задан: 16 November 2012 13:56
0
ответов

Разбор XML в Haskell

Я пытаюсь получить данные с веб-страницы, которая периодически обслуживает файл XML с котировками фондовой биржи (пример данных). Структура XML очень проста и выглядит примерно так:
вопрос задан: 16 November 2012 08:20
0
ответов

Как найти распределение в функции Haskell, скомпилированной с GHC?

Я использую GHC 7.4 для компиляции следующей функции: nodups ':: [Int] - > Bool nodups '= нормально пусто, где нормально _ [] = верно хорошо видно (n: ns) = нет (n `member` видно) & amp; & amp; хорошо (n `insert` ...
вопрос задан: 16 November 2012 02:48
0
ответов

Понимание того, как Either является экземпляром Functor

В свободное время я изучаю Haskell , так что это вопрос для начинающих. В своих чтениях я наткнулся на пример, показывающий, как Either a становится экземпляром Functor: instance Functor (Either a) ...
вопрос задан: 11 November 2012 07:42
0
ответов

Как просмотреть файл журнала из консоли PowerShell? (т.е. эквивалент «меньше» в PowerShell)

Что такое эквивалент «меньше» в PowerShell? Я вижу "больше", но в нем отсутствуют некоторые функции, на которые я полагаюсь (например, поиск по файлу) Я ищу пейджер (эквивалент «меньше»), который позволяет выполнять поиск ...
вопрос задан: 9 November 2012 20:57
0
ответов

Как я могу изменить свои типы данных, не вызывая перекомпиляции в Haskell?

После просмотра видео выступления Брета Виктора я был вдохновлен написать быстрый хак, который был чем-то похож на среду разработки, которую он продемонстрировал в разговор. По сути, идея состоит в том, что один ...
вопрос задан: 8 November 2012 16:29
0
ответов

Haskell Aeson: Как преобразовать значение в настраиваемый тип?

Не удалось найти хороший пример. Ценю любую помощь. Формат JSON выглядит следующим образом: [{"EXIF: Make": "Canon", "EXIF: Model": "Canon PowerShot S95", "EXIF: Orientation": "Horizontal (normal)", "EXIF: ...
вопрос задан: 5 November 2012 11:31
0
ответов

Как распаковка строгих полей сочетается с полиморфизмом?

Прагма {- # UNPACK # -} указывает компилятору исключить избыточные конструкторы. Цитирование Haskell wiki: Например, учитывая это: data T = T {- # UNPACK # -}! (Int, Float) GHC будет представлять ...
вопрос задан: 27 October 2012 08:01
0
ответов

соседи в матрице 2dm представлены в виде списка списка

Ну, я не могу понять, как я мог сделать это в haskell. Например, у меня есть такая матрица [[1,2],[3,4]] и я хочу для этого сгенерировать список списков со всеми возможными соседями каждого элемента...
вопрос задан: 14 October 2012 09:30
0
ответов

Исключения в Yesod

Я создал демона, который использовал очень примитивную форму ipc (telnet и отправлял строку, содержащую определенные слова в определенном порядке). Я вырвался из этого и теперь использую JSON для передачи сообщений в Yesod...
вопрос задан: 12 October 2012 20:20
0
ответов

Y Combinator на Haskell

Можно ли написать Y Combinator на Haskell? Похоже, у него будет бесконечно рекурсивный тип. Y :: f -> b -> c, где f :: (f -> b -> c) или что-то в этом роде. Даже простой ...
вопрос задан: 12 October 2012 13:53
0
ответов

Должно ли оборачивание функций в преобразователь монад считаться плохой практикой?

Допустим, мы хотим использовать ReaderT [(a, b)] над монадой Maybe, а затем мы хотим выполнить поиск в списке. Теперь простой и не слишком необычный способ сделать это: первая возможность найти a = ReaderT (...
вопрос задан: 11 October 2012 12:29
0
ответов

Использование монады Maybe в обратном направлении

Допустим, у меня есть несколько функций: f :: a -> Maybe a g :: a -> Может быть h :: a -> Может быть a И я хочу составить их следующим образом: если f не возвращает ничего, вычислите g. Если g возвращает ...
вопрос задан: 8 October 2012 19:30
0
ответов

Использование Haskell карты и составной функции

Хорошо, я не могу понять это, хотя у меня есть представление, что он делает ... let t = ["APE", "MONKEY", "DONKEY"] Теперь рассмотрим три случая: map (length.group) t (map length.group) t map (длина карты ....
вопрос задан: 3 October 2012 13:00
0
ответов

Язык программирования для функционального параллелизма: F # против Haskell

Функциональное программирование имеет неизменяемые структуры данных и не имеет побочных эффектов, которые по своей сути подходят для параллельного программирования. Я исследую, как использовать многоядерные вычисления в функциональном ...
вопрос задан: 3 October 2012 06:32
0
ответов

Haskell, определение бесконечного списка, добавление данных на лету и сортировка одновременно. Как?

Мне нужно определить список, в котором: 1 является членом если n является членом, то и 2n+1, и 3n+1 тоже. Таким образом, список бесконечен и должен быть отсортирован. При загрузке в GHCi команда "take 10 theList" выдаст: ...
вопрос задан: 2 October 2012 16:38
0
ответов

Определение логических операторов в Haskell

В моей домашней работе я должен определить логические операторы следующим образом: Используя эту структуру данных: данные MyBool = Cierto | Ложное извлечение (Show, Eq) - Cierto = True и Falso = False data PQR = A | B | C | D | E | F | G | H | ...
вопрос задан: 2 October 2012 09:23
0
ответов

Почему этот код делится на ноль?

У меня есть небольшая программа на Haskell, и мне любопытно, почему возникает исключение деления на ноль, когда я запускаю ее (GHC 7.0.3) import Qualified Data.ByteString.Lazy as B import Codec.Utils convert :: B ....
вопрос задан: 1 October 2012 06:38
0
ответов

Деление на ноль в Haskell

Я обнаружил довольно странное несоответствие между поведением div и /. * ghci>: t 1 `div` 0 1 `div` 0 :: Интеграл a => a * ghci>: t 1/0 1/0 :: дробное a => a * ghci> 1/0 ...
вопрос задан: 1 October 2012 05:54
0
ответов

Реализация алгоритма унификации в haskell

Я пытаюсь реализовать функцию унификации с алгоритмом, который указан как унифицировать α α = idSubst унифицировать α β = update (α, β) idSubst unify α (τ1 ⊗ τ2) = if α ∈ vars (τ1 ⊗ τ2) then error »...
вопрос задан: 25 September 2012 18:19
0
ответов

Haskell - Нахождение делителей целого числа

Согласно книге, как это делается, но я не могу заставить это работать. Это дает мне ошибку. Не по объему: 'ld'. Я предполагаю, что должен импортировать какой-то пакет, но не уверен, какой именно. Также ...
вопрос задан: 23 September 2012 18:06
0
ответов

Оценка небольшого языка математического типа, который поддерживает одну переменную

Я написал синтаксический анализатор, который читает строковый ввод. Это работает. Я также написал оценщик, который выдает результат. Но есть одна маленькая деталь, которую мне сложно реализовать. Послушайте ...
вопрос задан: 23 September 2012 01:56
0
ответов

Как я могу проверить, действителен ли BST?

Как я могу проверить, является ли BST допустимым, учитывая его определение и используя обобщенную версию свертывания для BST? данные (Ord a, Показать a, Читать a) => BST a = Void | Узел {val :: a, левый, правый :: ...
вопрос задан: 20 September 2012 20:57
0
ответов

Почему я не могу объявить предполагаемый тип?

У меня есть следующее: runcount :: (Eq a, Num b) => [a] -> b { {1}} runcount = runcountacc 0 runcountacc :: (Eq a, Num b) => b -> [a] -> b runcountacc n (_: []) = runcountacc (n + 1) [ ] ...
вопрос задан: 20 September 2012 12:40
0
ответов

Реализация фильтра с использованием HoF в Haskell

Я пытаюсь написать функцию, которая принимает предикат f и список, и возвращает список, состоящий из всех элементов, которые удовлетворяют f с сохраненным порядком. Хитрость заключается в том, чтобы сделать это, используя только более высокий порядок ...
вопрос задан: 19 September 2012 22:21
0
ответов

Как уменьшить двоичный след при использовании «плагинов» пакета Haskell?

Я внедрил простой -загрузчик для плагинов haskell в свой модуль Main.hs. Единственная функция, которую я использую прямо сейчас, это загрузка с этого сайта. Глядя на размер моего скомпилированного приложения, я вижу более...
вопрос задан: 19 September 2012 19:07