0
ответов

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

Haskell addm :: [Int] -> Int addm (x: xs) = sum (x: xs) Мне удалось получить сумму списка с помощью функции суммы, но можно ли получить сумму списка с помощью функции карты? И в чем польза ...
вопрос задан: 8 October 2016 00:57
0
ответов

Переделывание стандартных классов [закрыто]

Как свидетельствует Typeclassopedia, текущий стек классов, импортированных из теории категорий, представляет собой нечто вроде запутанной исторической случайности, а не красивой связное целое. В частности, это...
вопрос задан: 27 September 2016 18:22
0
ответов

Схемы рекурсии для манекенов?

Я ищу действительно простые, легкие для понимания схемы рекурсии и схемы обхода (катаморфизмы, анаморфизмы, гиломорфизмы и т. Д.), Которые работают не требуются следующие ...
вопрос задан: 15 September 2016 15:10
0
ответов

Haskell / Miranda :Найдите тип функции

Brief :Это вопрос из прошлого экзамена Miranda, но синтаксис очень похож на Haskell. Вопрос :Каков тип следующего выражения и что оно делает? (Определения of...
вопрос задан: 13 September 2016 16:13
0
ответов

Является ли оператор && строгим в Haskell?

Например, у меня есть операция fnB :: a -> Bool, которая не имеет смысла, пока fnA :: Bool не вернет False. В CI можно объединить эти две операции в один блок if: if (fnA && fnB (a)) {...
вопрос задан: 31 August 2016 13:31
0
ответов

Как я могу эмулировать каналы Go с Haskell?

Недавно я начал читать о языке программирования Go, и мне показалось, что переменные канала очень привлекательны.Можно ли имитировать ту же концепцию в Haskell? Может быть, чтобы иметь данные ...
вопрос задан: 30 August 2016 00:19
0
ответов

Преобразование IO Int в Int

Я создал выпадающий список из преобразования xmlWidget в comboBox с помощью функции castTocomboBox, и теперь я хочу получить текст или индекс активного элемента. Проблема в том, что если я использую ...
вопрос задан: 29 August 2016 08:39
0
ответов

не удалось сопоставить ожидаемый тип (Int -> Int -> Int) с фактическим типом `(t0, t1, t2) '

Я новичок и я пытаюсь сделать несколько уроков по Haskell перед тем, как поступить в универмаг по информатике. Я застрял в этой программе. Она берет три числа и помещает их в порядке возрастания. Могу ...
вопрос задан: 28 August 2016 17:27
0
ответов

Почему оператор доллара ($) так сложен в GHC 8.0.1?

Prelude>: i ($) ($) :: forall (r :: GHC.Types.RuntimeRep) a (b :: TYPE r). (a -> b) -> a -> b - Определено в ix GHC.Base ’infixr 0 $ Чем оно отличается от (a -> b) -> a -...
вопрос задан: 27 August 2016 22:19
0
ответов

Как работает компилятор Haskell?

Где я могу найти статью / документацию / все, что описывает, как компилятор Haskell действительно работает? Я прочитал довольно много документов GHC, но остановился, когда у меня заболела голова. Итак, кое-что, что не ...
вопрос задан: 25 August 2016 11:04
0
ответов

Лучший способ преобразования между [Char] и [Word8]?

Я новичок в Haskell и пытаюсь использовать чистую реализацию SHA1 в своем приложении (Data.Digest.Pure. SHA) с библиотекой JSON (AttoJSON). AttoJSON использует байтовые строки Data.ByteString.Char8, SHA использует данные ....
вопрос задан: 24 August 2016 19:29
0
ответов

Реализация foreach в haskell для начинающих / учащихся

Я пытаюсь реализовать морфизм foreach, чтобы чтобы проверить мое понимание определения морфизма и сопоставления с образцом ... Очевидно, я полностью упускаю оба момента. Не могли бы вы меня поправить? Я хочу ...
вопрос задан: 24 August 2016 15:58
0
ответов

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

Я изучаю книгу на Haskell, и в главе 10 (Складные списки) я пытаюсь выполнить упражнение, касающееся получения только одного конкретного типа элемента из списка, который включает в себя различные типы ...
вопрос задан: 6 August 2016 14:44
0
ответов

Парсек: Аппликатив против монад

Я только начинаю с Parsec (с небольшим опытом работы с Haskell), и меня немного смущает использование монад или аппликативов. Общее ощущение, которое я испытал после прочтения "Real World Haskell", "Write You ...
вопрос задан: 1 August 2016 20:44
0
ответов

Что означают (x: _) и [x: _]?

head ':: [a] -> a head '[] = error "Нет заголовка для пустых списков!" голова '(x: _) = x голова' :: [a] -> a head 'xs = case xs of [] -> ошибка «Нет заголовка для пустых списков!» (x: _) -> ...
вопрос задан: 24 July 2016 15:50
0
ответов

Функции Haskell слева направо

У меня есть функция, которую я использую довольно часто, что позволяет мне писать свой код так, как мне кажется более естественным. инфикс 6$: ($:) :: а -> (а -> б) -> б a $: f = f a Это позволяет мне делать ...
вопрос задан: 22 July 2016 21:55
0
ответов

Как работает Haskell printf?

Типовая безопасность в Haskell не уступает только языкам с зависимой типизацией. Но с Text.Printf творится некоторая глубокая магия, которая кажется довольно нестабильной. > printf "% d \ n" 3 3 > printf "% ...
вопрос задан: 15 July 2016 11:50
0
ответов

Хаскелл и производительность JVM [закрыто]

Я хочу написать серверную систему для веб-сайта (это будет служба в стиле пользовательского поиска). Он должен быть высокопараллельным и быстрым. Учитывая мое желание параллелизма, я планировал использовать функциональный ...
вопрос задан: 26 May 2016 23:27
0
ответов

Очистка FizzBuzz

Я все еще изучаю Haskell, и мне было интересно, есть ли там менее подробный способ выразить приведенный ниже оператор, используя 1 строку кода: map (\ x -> (x, (если mod x 3 == 0, то "fizz" else "") ++ if mod ...
вопрос задан: 24 May 2016 19:24
0
ответов

Каково соглашение об именах для классов типов в Scala?

В мире Java соглашения об именах интерфейсов довольно хороши учредил. Например, когда вы говорите, что определенный класс реализует интерфейс Comparable, вы можете сказать, что это объекты ...
вопрос задан: 24 May 2016 18:51
0
ответов

Как использовать ( ->) экземпляры Монад и путаница в отношении (->)

По различным вопросам я нашел подсказки в комментариях относительно использования экземпляра (->) Монад, например, для реализации безточечного стиля. Как по мне, это слишком абстрактно. Хорошо, я видел Стрелку ...
вопрос задан: 24 May 2016 08:03
0
ответов

` Строка" применяется к слишком большому количеству аргументов типа

Я только изучаю Haskell и пытаюсь написать простую программу для удаления первых n символов из строки. Вот что у меня получилось :cutString::(Num n, String str )=> n -> str ->...
вопрос задан: 15 May 2016 16:08
0
ответов

Как отлаживать программы уровня типа

Я пытаюсь заняться программированием на уровне типов, но это просто не работает. Я рву свои волосы, пытаясь понять, почему, черт возьми, GHC совершенно не в состоянии вывести типовые подписи, которые я хочу. Есть ...
вопрос задан: 8 May 2016 15:54
0
ответов

Понимание списков в Haskell, Python и Ruby

Я начал рассматривать сайт проекта Euler как способ чтобы изучить Haskell и улучшить свои Python и Ruby. Я думаю, что версии Haskell и Python подходят, но я уверен, что должен быть более чистый способ для...
вопрос задан: 27 April 2016 19:35
0
ответов

Идиоматическое эффективное добавление Haskell?

Список и оператор cons (:) очень распространены в Haskell. Минусы - наш друг. Но иногда я хочу добавить что-то в конец списка. xs ʻappend` x = xs ++ [x] Это, к сожалению, неэффективно ...
вопрос задан: 25 April 2016 12:30
0
ответов

Соглашения об именах модулей Haskell

Как мне назвать модули Haskell для программы, а не библиотеки, и организовать их в иерархию? Я делаю трассировщик лучей под названием Luminosity. Сначала у меня были эти модули :Vector Color Intersect…
вопрос задан: 13 April 2016 06:49
0
ответов

Явный импорт экземпляров

Как мне явно импортировать экземпляры класса типов? Кроме того, как мне сделать это с квалифицированным импортом? В настоящее время я выполняю import Control.Monad.Error (), чтобы импортировать экземпляр монады, который я могу использовать для (...
вопрос задан: 6 April 2016 09:25
0
ответов

замена / подстановка с библиотеками регулярных выражений Haskell

Есть ли в Haskell высокоуровневый API для выполнения поиска и замены с помощью регулярных выражений? В частности, я смотрю на пакеты Text.Regex.TDFA или Text.Regex.Posix. Мне бы очень хотелось что-нибудь типа: f :: ...
вопрос задан: 29 March 2016 22:19
0
ответов

«читать» строковые данные -ing в типы «данных» haskell

Благодаря этому отличному руководству я знаю, как читать строку (в данном случае читать из файла в people.txt непосредственно в синоним типа: введите Person = [Int] вот так: people_text <- readFile "...
вопрос задан: 22 March 2016 02:52
0
ответов

Как смоделировать 2D-мир на Haskell

Я делаю игру. Игра состоит из бесконечной плоскости. Единицы должны быть на дискретном квадрате, чтобы их можно было расположить с помощью простого Location {x :: Int, y :: Int}. Может быть много видов единиц. ...
вопрос задан: 16 March 2016 09:53