Вопросы по теме 'applicative'

Поместите два монадических значения в пару и верните ее
Я играю с Parsec и хочу объединить два синтаксических анализатора в один с результатом, помещенным в пару, а затем передать ему другую функцию для работы с результатом синтаксического анализа, чтобы написать что-то вроде этого: try (pFactor...
338 просмотров
schedule 11.08.2022

Можно ли сопоставить кортеж функций со списком в Haskell?
Я пытаюсь найти способ сделать что-то вроде этого: (head, last) `someFunction` [1, 2, 3] для создания кортежа (1, 3) в качестве вывода. Теоретически он похож на аппликативный функтор, но немного наоборот. Я предполагаю, что есть...
782 просмотров
schedule 24.01.2024

Анализ аппликативных функторов
Я пытался узнать о статическом анализе аппликативных функторов. Во многих источниках говорится, что преимуществом их использования перед монадами является восприимчивость к статическому анализу. Однако единственный пример фактического выполнения...
558 просмотров

Аппликативный функтор, который меняет порядок эффектов
Имея аппликативный функтор f , у меня возникла идея создать новый аппликативный функтор Rev f , подобный f , но с обратным порядком эффектов. Вот: import Control.Applicative newtype Rev f a = Rev {unRev :: f a} instance Functor f =>...
209 просмотров
schedule 25.10.2023

Почему pointfree.io выбрала liftM2 вместо liftA2?
Недавно я писал решение для упражнения ISBN Verifier по адресу Exercism , и когда я запускал эту функцию через pointfree .io : \c -> isDigit c || c == 'X' Я вернулся: liftM2 (||) isDigit ('X' ==) Почему pointfree.io выбрал...
458 просмотров
schedule 23.03.2024

Лучший способ применить к функции аргументы смешанных, возможно, аппликативных типов
Я новичок в Haskell и функциональном программировании, и недавно я узнал о функторах, аппликативах и монадах. Хотя я, кажется, понимаю основы, мне трудно определить лучший/наиболее идиоматический способ применения аргументов функции, когда тип...
117 просмотров
schedule 20.04.2024