4
ответа

Существует ли эквивалент в Scala к более общей функции карты Python?

Я знаю, что Списки Scala имеют реализацию Map с подписью (f: (A) => B): Список [B] и foreach реализация с подписью (f: (A) => Единица): Единица, но я ищу что-то это...
вопрос задан: 16 April 2010 15:21
2
ответа

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

Есть ли лучший способ написать следующую функцию fs 'с функторами или аппликативами? fncnB = (* 2) fncnA = (* 3) fs 'fs = zip (map (fncnA. fst) fs) $ map (fncnB. snd) fs.
вопрос задан: 22 March 2019 18:35
2
ответа

простая ошибка реализации дерева монады [дубликат]

Рассмотрим следующий фрагмент кода - модуля Main, где данные MyTree a = MyLeaf a | MyNode (MyTree a) (MyTree a), выводящий (Show) экземпляр Monad MyTree, где return = ...
вопрос задан: 27 July 2015 15:29
2
ответа

Именование "чистой" функции в Control .Applicative [closed]

Почему функция для поднятия значения в функтор с именем pure в Control.Applicative?
вопрос задан: 6 March 2015 17:17
2
ответа

Функтор / Аппликативные экземпляры для State в Haskell

Прочитав (и прочитав некоторые разделы) статью Вадлера о монадах, я решил более внимательно изучить статью, определив функтор и аппликативные примеры для каждой из монад, которые он описывает ...
вопрос задан: 20 August 2010 18:59
1
ответ

Может кто-нибудь объяснить, где в этом коде возникают экземпляры Applicative?

isAlphaNum :: Char -> Bool isAlphaNum = (||) <$> isAlpha <*> isNum Я вижу, что это работает, но я не понимаю, откуда берутся экземпляры Applicative (или Functor).
вопрос задан: 7 September 2019 12:19
1
ответ

Изучите прикладную проблему (# 7) в главе 12 «Программирование на Haskell».

Я работал через отличное программирование на Хаскеле (2-е изд). Хотя я немного озадачен вопросом об аппликативах. Дан следующий тип: data Expr a = Var a | Val Int | Добавлять (...
вопрос задан: 18 January 2019 17:50
0
ответов

Аппликативный экземпляр для State и других монад MTL?

Глядя на документацию для Control.Applicative, я заметил, что в них есть объявления экземпляров для определенных монад (например, IO, Maybe и особенно ST), но нет экземпляров для монад MTL, таких как State ...
вопрос задан: 23 May 2017 12:25
0
ответов

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

Мне кажется, я понимаю, как работают прикладные функторы в Haskell, и использую их для основных типов данных (Maybe, Either...). Однако я нашел этот вопрос на следующем примере: withPool ...
вопрос задан: 23 May 2017 12:03
0
ответов

Обход списков и потоков с функцией, возвращающей будущее

Введение Будущее Scala (новое в 2.10, а теперь и 2.9.3) является аппликативным функтором, что означает, что если у нас есть проходимый тип F, мы можем взять F [A] и функцию A = > Будущее [B] и превратить их ...
вопрос задан: 23 May 2017 11:46
0
ответов

Когда и почему следует использовать Аппликативные Функторы в Scala

Я знаю, что Monad можно выразить в Scala следующим образом: trait Monad [F [_]] {def flatMap [A, B] (f: A => F [B]): F [A] => F [B] } Я понимаю, почему это полезно. Например, даны две функции: ...
вопрос задан: 12 May 2016 06:06
0
ответов

Как объединить фьючерсы разных типов в один фьючерс без использования zip()

Я хочу создать Future типа Future[(Class1,Class2,Class3 )] из приведенного ниже кода. Однако единственный способ сделать это — использовать zip (). Я нахожу решение уродливым и, по правде говоря, не оптимальным. Можно...
вопрос задан: 25 February 2016 23:22
0
ответов

Аппликативы составляют, монады - нет

Аппликативы составляют, а монады - нет. Что означает вышеприведенное утверждение? И когда одно предпочтительнее другого?
вопрос задан: 18 June 2015 06:11
0
ответов

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

В «Прикладном программировании с эффектами» Макбрайда и Патерсона они вводят прекрасный синтаксический сахар для поднятия чистой функции :[| f x y z |] для f <$> x < *> y < *> z и...
вопрос задан: 20 December 2014 17:42
0
ответов

Можно ли сопоставить кортеж функций со списком в Haskell?

Я пытаюсь найти способ сделать что-то подобное:(голова, последняя)`someFunction `[1, 2, 3] для создания кортежа (1, 3 )в качестве вывода. Теоретически он похож на аппликативный функтор, но...
вопрос задан: 20 June 2014 23:02
0
ответов

Лакс моноидальные функторы с другой моноидальной структурой

Аппликативные функторы хорошо известны и любимы среди хаскеллеров за их способность применять функции в эффективном контексте. В категориально-теоретических терминах можно показать, что методы ...
вопрос задан: 26 May 2014 22:02
0
ответов

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

В одном обсуждении я слышал, что интерфейс Applicative некоторых парсеров реализован иначе, более эффективно, чем их интерфейс Monad. Причина в том, что с Applicative мы знаем все «эффекты» ...
вопрос задан: 3 September 2013 15:47
0
ответов

Есть ли у Скалаз что-то, что можно накопить как в ошибках, так и в успехах?

Я начал использовать Scalaz 7 Validation and/or disjunction для обработки списка возможных неудачных операций и управления их результатом. Есть два хорошо задокументированных случая для такого рода вариантов использования :1/...
вопрос задан: 10 August 2012 14:39
0
ответов

функции как аппликативные функторы (Haskell/LYAH)

Глава 11 книги Learn You a Haskell вводит следующее определение: :instance Applicative ((-> )r ), где pure x = (\_-> x )f < *> g = \x -> f x (g x )Здесь автор...
вопрос задан: 4 August 2012 18:07
0
ответов

Для чего полезен аппликативный функтор Const?

Я только что нашел Const в документации Control.Applicative, но мне трудно понять, где это полезно, чем просто использовать Monoid напрямую. Что мне не хватает?
вопрос задан: 17 July 2012 23:03
0
ответов

Аппликативный конструктор для записей

Я хочу в общем случае создать аппликативные конструкторы для записей haskell, чтобы создать парсер для записи. Рассмотрим запись :data Record = Record {i ::Int, f ::Float} the...
вопрос задан: 10 July 2012 14:58
0
ответов

Аппликативный пример для кортежа с моноидом и функцией внутри

Я пытался преобразовать пример haskell, с которым я столкнулся ранее, в scalaz. Первоначальный пример был таким: ("Ответ на ", (*)) <*> ("Окончательный вопрос", 6) <*> ("Жизнь, ...
вопрос задан: 7 June 2012 20:42
0
ответов

Где найти упражнения по программированию для аппликативных функторов?

Я читал об аппликативных функторах, особенно в «Функциональной жемчужине» Макбрайда и Патерсона. Но я хотел бы укрепить свое понимание, выполнив несколько упражнений. Я бы предпочел программирование...
вопрос задан: 20 April 2012 02:55
0
ответов

Различие между классами типов MonadPlus, Alternative и Monoid?

Стандартные-классы типов библиотеки Haskell MonadPlus, Alternative и Monoid предоставляют по два метода с практически одинаковой семантикой:Пустое значение:mzero, empty или mempty. Оператор a ->...
вопрос задан: 16 April 2012 02:06
0
ответов

Почему импорт Control.Applicative позволяет этому плохому коду выполнять проверку типов?

Я помогаю своему другу изучать Haskell, и он недавно создал подобный код, который проверяет типы и создает цикл, загружающий ЦП во время выполнения. Я совершенно сбит с толку этим. импортировать Control.Monad import ...
вопрос задан: 17 March 2012 20:20
0
ответов

Объясните реализацию Traverse[List] в scalaz-seven

Я пытаюсь понять реализацию traverseImpl в scalaz-seven: def traverseImpl[F[_], A, B](l: List[A])(f: A => F[B])(неявный F: Applicative[F]) = { DList.fromList(l).foldr (F.point(...
вопрос задан: 15 March 2012 04:16
0
ответов

Как составить функцию для аппликативов с помощью scalaz

Изучая Scalaz 6, я пытаюсь написать типобезопасные программы чтения, возвращающие проверки. Вот мои новые типы: type ValidReader [S, X] = (S) => Validation [NonEmptyList [String], X] type MapReader [X] = ...
вопрос задан: 23 February 2012 15:35
0
ответов

Как показать, что монада является функтором и аппликативным функтором?

Монады известны как теоретически подмножество функторов и, в частности, аппликативных функторов, хотя это не указано в системе типов Haskell. Зная это, учитывая монаду и основываясь на ...
вопрос задан: 1 February 2012 15:12
0
ответов

Слияние/присоединение Just в Haskell

Я пытаюсь сделать то, что должно быть ослепительно очевидно в Haskell, а именно перейти от Just [1] и Just [2] к Just [1, 2]. Однако я не могу ничего найти в Интернете, поскольку продолжаю находить связанные, но бесполезные страницы. ...
вопрос задан: 25 January 2012 01:02
0
ответов

Почему экземпляр Applicative для Maybe не дает Nothing, если функция Nothing в <*>

Я новичок в haskell и читаю книгу Learn you a haskell. Я уже некоторое время пытаюсь переварить функторы и аппликативные функторы. В теме «Аппликативные функторы» ...
вопрос задан: 24 December 2011 19:20