Haskell – вопросы и ответы

65
голосов
1
ответ
Когда я изучаю новый язык, первое, что я делаю, это прочитать реализацию Fast Fourier Transform и попытаться заставить его работать. Это алгоритм, с которым я хорошо знаком - поэтому он помогает мн...
1 месяц, 3 недели назад Floyd Everest
54
голоса
1
ответ
Я хочу написать функцию, которая может вызывать гетерогенный список объектов Storable (разные типы) {-# LANGUAGE FlexibleInstances #-} {-# LANGUAGE RankNTypes, ExistentialQuantification, Impredicat...
1 месяц, 3 недели назад Bet
97
голосов
3
ответа
Я пытаюсь примирить категориальное определение Монады с другими общими представлениями/определениями, которые я видел в некоторых других учебниках/книгах. Ниже, я могу (возможно, решительно) попыта...
1 месяц, 3 недели назад Dev Maha
53
голоса
2
ответа
Вот код: data Tree t = NilT | Node t (Tree t) (Tree t) instance Show (Tree t) where show NilT = "" show Node t l r = (show t) ++ ", " ++ (show l) ++ ", " ++ (show r) как использовать "show" в "t sh...
1 месяц, 3 недели назад Adriano Farias
98
голосов
1
ответ
Я долго пытался повторить эту функцию в haskell, я хочу выразить, например: mySum x y = x + y mySum x y = (+) x y mySum x = (+) x mySum = (+) -- it Messi goal! Моя функция немного сложнее, но я дей...
1 месяц, 3 недели назад Damian Lattenero
65
голосов
1
ответ
И если есть другие хорошие варианты, почему еще нет стилей, у которых есть все общие черты случайного доступа? Тогда Vector и другие структуры данных произвольного доступа будут иметь экземпляры эт...
1 месяц, 3 недели назад haskellHQ
74
голоса
2
ответа
Я знаю, что следующая функция мне просто объясняет, как она работает, и вычисления, которые имеют место: sponge :: Int -> [a] -> [a] sponge 0 xs = xs sponge n [] = [] sponge n (x:xs) = sponge...
1 месяц, 3 недели назад maclunian
66
голосов
1
ответ
Я пишу программу для решения определенных математических задач, а Haskell - это язык, на котором я его написал до сих пор (по разным причинам). В какой-то момент мне нужно решить систему линейных у...
1 месяц, 3 недели назад Tim
66
голосов
3
ответа
У меня есть тип данных, который выглядит так: data MyAwesomeType = MyAwesomeType { a :: String, b :: String, c :: String, ... -- 25 in total } deriving (Show)
1 месяц, 3 недели назад turtle
92
голоса
1
ответ
В одном из моих пакетов я недавно добавил слишком строгую зависимость ограничения зависимостей, чтобы обойти ошибку в этой конкретной версии пакета. Однако, поскольку новые версии других пакетов бы...
1 месяц, 3 недели назад valderman
76
голосов
1
ответ
У меня есть следующий тип: newtype Moi s a = Moi { runMoi :: s -> (a, s) } конструктор данных ожидает функцию как аргумент, и он должен возвращать кортеж. Я пробовал следующее: *OwnState> :t ...
1 месяц, 3 недели назад zero_coding
129
голосов
2
ответа
Есть ли способ взять "вещи" из монады? Я разрабатываю игру, и теперь я пытаюсь понять о базах данных. Я нашел happstack действительно красиво, но я не могу это понять. Например, у меня есть эта фун...
1 месяц, 3 недели назад Illiax
74
голоса
1
ответ
Я установил Haskell Mode через Melpa package-install . Однако M - . ( goto-definition) по-прежнему использует встроенную функцию findTags от emacs. Не имеет ли haskell режим этой функции определени...
1 месяц, 3 недели назад Madhavan Kumar
66
голосов
3
ответа
Я читаю об аппликативных функторах и нашел такую строку: (+) <$> (+3) <*> (*100) $ 5 Он выводит 508. Как 5 могут использоваться (+3) и (* 100) одновременно? Почему нам не нужно передава...
1 месяц, 3 недели назад Bulat M.
65
голосов
1
ответ
Мои dotfiles на 99% аналогичны между компьютерами, но есть небольшие настройки, которые я сохраняю для различных второстепенных настроек. Мой план состоял в том, чтобы различать использование опера...
1 месяц, 3 недели назад bertabus
112
голосов
2
ответа
iterate :: (a -> a) -> a -> [a] (Как вы, вероятно, знаете) iterate - это функция, которая принимает функцию и начальное значение. Затем он применяет функцию к стартовому значению, затем пр...
1 месяц, 3 недели назад Andrei Ciobanu
52
голоса
3
ответа
Я начал изучать Haskell за последние пару дней, и у меня возникли проблемы с этим фрагментом кода. Я пытаюсь создать функцию, которая будет генерировать список простых чисел, учитывая исходный спис...
1 месяц, 3 недели назад alkjiughh17652
65
голосов
2
ответа
Я пытаюсь определить функцию, которая создает бесконечный список всех возможных слов в моей простой грамматике. Но ghci зависает, когда я вхожу в head (generate [] []) , хотя head (generate' [] [])...
1 месяц, 3 недели назад AnatoliySultanov
73
голоса
1
ответ
Я хотел бы использовать добровольное равенство, которое пока присутствует только в голове GHC. Я сделал системную установку GHC, и в моем проекте я добавил snapshot.yaml resolver: nightly-2016-12-3...
1 месяц, 3 недели назад nicolas
53
голоса
1
ответ
Я пытаюсь передать stdin моей программы внешнему процессу, используя следующие import System.IO import System.Posix.IO import System.Posix.Process import qualified System.Process as P import Contro...
1 месяц, 3 недели назад Aneesh Durg
93
голоса
1
ответ
Я привык работать с Dart, где совместное использование типов между сервером и клиентом так же просто, как импорт соответствующих пакетов в ваш проект. Можно ли что-то подобное выполнить с Yesod/Has...
1 месяц, 3 недели назад Thomas Løcke
65
голосов
1
ответ
Я пытаюсь использовать Control.Arrow.ArrowTree для создания стрелки обработки HTML, которая останавливается после первого успешного преобразования (сначала в глубину ) в данном дереве. То есть функ...
1 месяц, 3 недели назад shang
65
голосов
1
ответ
Я работаю над программой обработки изображений в Haskell. Библиотека Repa-DevIL хороша для обработки изображений. Однако мне нужен графический интерфейс, который может отображать изображение в реал...
1 месяц, 3 недели назад iceiceice
87
голосов
1
ответ
Я Haskell и Stackoverflow noob, и вот мой первый и, вероятно, довольно простой вопрос Хаскелла. module M where import Data.HList data R r a r1 = undefined :: R a Int r2 = undefined :: R a Double rP...
1 месяц, 3 недели назад polypus74
-7
голосов
4
ответа
Я немного тренировался с Haskell, чтобы узнать язык (это потрясающе), поэтому я пошел в проект эйлер и сделал проблему № 2, которая заняла довольно много времени (~ 30-40 лет, я не знаю, сколько им...
1 месяц, 3 недели назад Zaid Ajaj
107
голосов
1
ответ
У меня есть реализация функции sin с использованием серии Тейлора. В этом я использую такую map : sin' x = sum $ map (\n -> term x n) [0..50] where term x n = (x^pw / fromIntegral (fact pw))*(-1...
1 месяц, 3 недели назад zerospiel
64
голоса
2
ответа
Предположим, у меня есть тип типа data Options = Options { _optionOne :: Maybe Integer , _optionTwo :: Maybe Integer , _optionThree :: Maybe String } deriving Show с большим количеством полей. Я хо...
1 месяц, 3 недели назад user4601931
74
голоса
1
ответ
addMod26 a b = (a + b) `mod` 26 char2Int c = ord c - (ord 'a') int2Char i = chr (i + (ord 'a')) addChar a b = int2Char ((addMod26 `on` char2Int) a b) Этот код пытается реализовать операцию add на c...
1 месяц, 3 недели назад liuyang1
105
голосов
1
ответ
Я пытаюсь использовать cabal для установки некоторого пакета, но у меня есть ошибка, например: Resolving dependencies... [1 of 1] Compiling Main ( /var/folders/qA/qAV3z3wUGnOKfufb0vx2N++++TI/-Tmp-/...
1 месяц, 3 недели назад elf
66
голосов
1
ответ
Я пытаюсь получить представление об aeson пакете. Я неправильно использую свой API-интерфейс Lens ? > :t bt ^? _Array bt ^? _Array :: Maybe (vector-0.10.12.2:Data.Vector.Vector Value) > :t bt...
1 месяц, 3 недели назад sevo
83
голоса
2
ответа
Определенный код fun foldl f e l = let fun g(x, f'') = fn y => f''(f(x, y)) in foldr g (fn x => x) l e end Я не понимаю, как это работает; в чем цель g(x, f'') ? Я также нашел аналогичный при...
1 месяц, 3 недели назад 高亮节
83
голоса
1
ответ
У меня есть глубоко вложенная структура данных, и я использую Control.Lens. *, чтобы упростить доступ к своим значениям в государственной монаде. Итак, рассмотрим следующее: data Config = Config { ...
1 месяц, 3 недели назад nomen
96
голосов
1
ответ
У меня есть следующая основная функция, которая должна спросить двух игроков для своих колод, которые выбираются из библиотеки колод в другом файле, а затем запускают цикл с этими входами. main :: ...
1 месяц, 3 недели назад jack
76
голосов
2
ответа
Я пытаюсь выполнить не очень сложный анализ изображения, чтобы попытаться найти различные фигуры и вычислить некоторые их параметры, такие как область и периметр (в пикселях), и я пытаюсь сделать э...
1 месяц, 3 недели назад Mokona Modoki
113
голосов
4
ответа
Предположим, что у меня есть функция, которая принимает некоторую структуру ввода и возвращает некоторую структуру вывода (которая может быть связана с структурой ввода, но отличается от нее). Я не...
1 месяц, 3 недели назад Clinton
84
голоса
3
ответа
Я новичок в Haskell и пытаюсь понять, как это работает? sequenceA [(+3),(+2),(+1)] 3 Я начал с определения sequenceA :: (Applicative f) => [f a] -> f [a] sequenceA [] = pure [] sequenceA (x:x...
1 месяц, 3 недели назад Yola
63
голоса
1
ответ
У меня есть новый тип Env определенный следующим образом: newtype Env a = Env (State (Context Type) a) deriving (Functor, Applicative, Monad, MonadState (Context Type)) Я хочу, чтобы он автоматичес...
1 месяц, 3 недели назад rausted
53
голоса
3
ответа
Я новичок в Haskell, поэтому прошу прощения, если это простой вопрос, но я не мог найти ответ нигде. То, что я хотел бы сделать, - захватить первый и последний элемент списка и вернуть их в новый с...
1 месяц, 3 недели назад Will
101
голос
1
ответ
я снова с другой основной проблемой, которую у меня есть. Я использую ghci. я (с помощью) создал этот рабочий код: newtype Name = Name String deriving (Show) newtype Age = Age Int deriving (Show) n...
1 месяц, 3 недели назад John
-5
голосов
2
ответа
Я только начинаю изучать Haskell, и мне нужно создать composite функций, которая получает в качестве входных данных два списка a, b :: [(String, String)] и выводит новый список c :: [(String, Strin...
1 месяц, 3 недели назад Pavels
Чтобы , пожалуйста,
Выберите тему жалобы:

Другая проблема