Публикации по теме 'haskell'
Биткойн-монада
Журнал функционального программирования
Мы расскажем о других высших полномочиях, таких как Функторы, Аппликаторы, Моноиды, в следующих журналах!
PS: Прокомментируйте ниже любые конкретные темы функционального программирования, о которых вы хотели бы видеть журнал!
Эффективный Хаскель
ТЕПЕРЬ ПОЛНОСТЬЮ ВЫПУЩЕНО
Эффективный Хаскель
Автор Ребекка Скиннер
Книга Ребекки Скиннер , Эффективный Haskell: решение реальных проблем с помощью строго типизированного функционального программирования , вышла из стадии бета-тестирования и полностью выпущена как в электронной книге, так и в print . Электронная книга доступна на The Pragmatic Bookshelf:
Effective Haskell Используйте возможности Haskell в своих программах, учась у инженера,..
Изучение Haskell: руководство по ресурсам
Одна из самых распространенных трудностей, с которой все мы сталкиваемся, когда решаем начать изучать что-то новое, — мы просто не знаем, с чего начать и где учиться.
Если раньше было проблемой найти книгу, учебник или курс — теперь можно найти множество веб-источников с хорошими материалами и тоннами мусора одновременно. Мы подготовили для вас небольшой трамплин — список проверенных нашими специалистами учебных источников на Haskell.
Первый день в школе
Изучите Haskell..
Вопросы по теме 'haskell'
Сколько времени нужно, чтобы создать 1 миллион потоков в Haskell?
Насколько я понимаю, у Haskell есть зеленые потоки. Но насколько они легкие. Можно ли создать 1 миллион потоков?
Или сколько времени потребуется для 100 000 потоков?
2981 просмотров
schedule
27.11.2023
Пример того, как анализировать вывод exiftool JSON в Haskell
Я не могу понять ни одну документацию. Может ли кто-нибудь привести пример того, как я могу проанализировать следующий сокращенный вывод exiftool с помощью модуля Haskell Text.JSON ? Данные генерируются с помощью команды exiftool -G -j...
2829 просмотров
schedule
12.11.2023
Почему именованные функции должны быть в отдельном файле в объятиях?
В Haskell за 5 шагов функция факториала определяется следующим образом:
let fac n = if n == 0 then 1 else n * fac (n-1)
Но для объятий там написано, что фак должен быть в фак.ч. Может ли кто-нибудь объяснить, почему это так - отсутствие...
987 просмотров
schedule
19.01.2024
Классы типов и семейства типов Haskell (продолжение)
Мне нужна помощь в определении ошибки компилятора, которая действительно сводит меня с ума...
У меня есть следующий класс типов:
infixl 7 -->
class Selectable a s b where
type Res a s b :: *
(-->) :: (CNum n) => (Reference s a)...
387 просмотров
schedule
23.11.2023
Как моя программа или библиотека на Haskell может найти номер своей версии?
Я хотел бы, чтобы моя кабализованная программа имела переключатель --version .
Я хотел бы, чтобы он сообщал ту же версию, что и в файле .cabal.
Если мне придется обновить номер версии отдельно в моем исходном коде Haskell, а также в файле...
3645 просмотров
schedule
29.10.2023
Haskell: разделить четные и нечетные элементы на кортежи
Я не могу использовать функции высокого порядка. Я просто не могу понять, как это сделать. Я очень новичок в хаскеле. Он также должен быть рекурсивным.
split :: [Int] -> ([Int],[Int])
split xs =
Мне дано это для начала. Честно говоря,...
6432 просмотров
schedule
21.11.2023
Как можно эффективно реализовать итеративный поиск с углублением в haskell?
У меня есть проблема оптимизации, которую я хочу решить. У вас есть какая-то структура данных:
data Foo =
{ fooA :: Int
, fooB :: Int
, fooC :: Int
, fooD :: Int
, fooE :: Int
}
и рейтинговая функция:
rateFoo :: myFoo -> Int...
1617 просмотров
schedule
18.12.2023
Как объявить функцию (недопонимание типа Может быть)
Мне нужна функция, которая работает так:
some :: (Int, Maybe Int) -> Int
some a b
| b == Nothing = 0
| otherwise = a + b
Случаи применения:
some (2,Just 1)
some (3,Nothing)
map some [(2, Just 1), (3,Nothing)]
Но мой код...
1111 просмотров
schedule
28.12.2023
На пути к пониманию CodeGen* в привязках Haskell LLVM
Предыстория: я пишу игрушечный интерпертер/компилятор Lisp на Haskell для собственного развлечения/назидания. Я пытаюсь добавить возможность компиляции в байт-код LLVM.
Контекст: я читал документацию по LLVM.Core и пример кода ( здесь ),...
1396 просмотров
schedule
26.11.2023
применение списка к введенной функции для проверки на тавтологию
Я хочу написать функцию в haskell, которая определяет, является ли логическая функция (введенная с лямбда-выражением в ghci) тавтологией или нет. Ввод должен выглядеть так:
taut n (\[x..] -> ... == ...)
taut 3 (\[x,y,z] -> ((x||y)||z) ==...
804 просмотров
schedule
07.01.2024
Зависимо типизированная очередь в haskell
Я попытался ответить на свой вопрос о примерах, использующих расширение PolyKinds в GHC , и пришел с более конкретной проблемой. Я пытаюсь смоделировать очередь, состоящую из двух списков: головного списка, из которого dequeue берет элементы, и...
397 просмотров
schedule
19.01.2024
смущает функция как экземпляр Functor в haskell
Тип fmap в Functor:
fmap :: Functor f => (a -> b) -> f a -> f b
похоже, сначала примените функцию (a - ›b) к параметру f a, чтобы создать результат типа b, затем примените к нему f, и результат будет f b
используя Maybe a ,...
6699 просмотров
schedule
01.01.2024
перевести Haskell (монадический) в F #
Помогите мне перевести следующий блок кода Haskell. Функция run создает текстовую строку, соответствующую заданному регулярному выражению, которое абстрагируется как Pattern. Объявление типа Pattern вы можете увидеть ниже в блоке кода F #. Вы...
772 просмотров
schedule
24.10.2023
Yesod, как сгенерировать типобезопасную ссылку из JSON-данных в Javascript / Julius
у меня есть маршрут
/notes/#NoteId NoteR GET
С другой страницы я хочу сделать ссылку на нее. При использовании «классического» гамлета это легко:
<a href=@{NoteR $ entityKey note}>notetitle
Я хочу, чтобы моя страница...
647 просмотров
schedule
30.12.2023
Перевод с монады на аппликатив
Итак, я знаю, что содержит класс типа Applicative и почему это полезно. Но я не могу понять, как вы могли бы использовать это в нетривиальном примере.
Рассмотрим, например, следующий довольно простой анализатор Parsec:
integer :: Parser...
784 просмотров
schedule
12.12.2023
Может ли мне помочь здесь проверка типов? Может быть, со шрифтовыми семьями?
Итак, я пишу эту маленькую футбольную игру в течение некоторого времени, и есть одна вещь, которая вызывает ошибки меня с самого начала. Игра следует Yampa Arcade . шаблон, поэтому для «объектов» в игре есть тип суммы:
data ObjState = Ball...
264 просмотров
schedule
05.01.2024
Удалить несколько элементов из списка в зависимости от позиции
Я хочу удалить некоторые элементы из списка. У меня пока есть функция удаления:
deleteElem :: Int -> [a] -> [a]
deleteElem _ [] = []
deleteElem x zs | x > 0 = take (x-1) zs ++ drop x zs
| otherwise = zs
И я хотел бы...
1755 просмотров
schedule
04.11.2023
Попытка справиться с действиями ввода-вывода
Я пытаюсь разобраться с действиями ввода-вывода. Интересно, почему это работает:
main = do
alias = getLine
name <- alias
putStrLn ("your name is: " ++ name)
говоря
parse error on input `='
109 просмотров
schedule
04.12.2023
Cabal не удалось установить unix-2.7.0.0
Я пытаюсь установить пакет unix в среде Windows. Я использую Cygwin, но он все еще не работает.
Ниже приведен фрагмент ошибки, которую я получаю:
$ cabal install unix
Resolving dependencies...
Configuring unix-2.7.0.0...
Warning: Unknown...
625 просмотров
schedule
30.11.2023
Как я могу добавить дополнительный переключатель в Leksah?
Я хотел бы добавить в компилятор дополнительный ключ "-XDeriveDataTypeable".
В противном случае я хотел бы скомпилировать Typeable.
Где я могу сделать это в Leksah?
66 просмотров
schedule
05.11.2023