Вопросы по теме 'deriving'
Как я могу получить экземпляр данных для GADT в Haskell?
У меня есть GADT, который всегда используется только с двумя разными параметрами: ForwardPossible и ():
-- | Used when a forward definition is possible.
data ForwardPossible = ForwardPossible deriving (Eq, Ord, Typeable, Data, Show)
-- | GADT...
1373 просмотров
schedule
13.11.2021
Получение MonadFree от нового типа с помощью стека трансформаторов
Я пытаюсь вывести MonadFree из newtype и просто не могу это понять. Мой текущий код:
newtype ApplicationStack s r p m =
ApplicationStack { runApplication :: StateT s (ReaderT r p) m }
deriving (Functor, Applicative, Monad, MonadState s,...
89 просмотров
schedule
29.09.2021
Что это за синтаксис `deining newtype`?
Из сообщения в блоге я прочитал
-- | Newtype for disabling logging
newtype NoLoggingT m a
= NoLoggingT { runNoLoggingT :: m a }
deriving newtype (Functor, Applicative, Monad)
deriving (MonadTrans) via IdentityT
instance Monad m =>...
78 просмотров
schedule
29.09.2021
Почему вы можете создать ценность с помощью Just (+)?
В настоящее время я изучаю Haskell и застрял на создании экземпляров типов в классы типов. Я вообще-то не понимаю, почему можно создать значение типа Maybe a с помощью Just (+) .
Проблема, почему это ведет себя странно для меня, заключается в...
109 просмотров
schedule
02.03.2022
Типизируемый экземпляр Haskell
Я использую cmdargs для получения аргументов из программы командной строки. Я использую какой-то специальный тип в своей программе
data Function = Max
| Min
| Moy
| Med
deriving...
519 просмотров
schedule
11.05.2022
Автоматически получать Add, Mul, Ord и т. д. для числового типа
Какой самый простой способ создать собственный тип, который ведет себя как число?
Мне нужна проверка типов, которая предотвращает смешивание разных единиц в моей программе, но я все еще хочу иметь возможность легко выполнять вычисления для типа без...
2576 просмотров
schedule
04.07.2022
Создайте новый тип экземпляра Eq
Я изучаю Haskell, и мне дали следующее задание: у меня есть новый тип, состоящий из двух смешанных типов данных, и я должен сделать его экземпляром Eq без использования производных. Вот что у меня есть:
data Number = One | Two | Three deriving...
551 просмотров
schedule
03.05.2023
Могу ли я сделать инфикс конструктора данных haskell GADT в производном шоу?
Рассмотрим два объявления data :
{-# LANGUAGE GADTs #-}
data X = Int `Y` Int deriving Show
data Z where
W :: Int -> Int -> Z deriving Show
main = do
print (1 `Y` 2)
print (3 `W` 4)
Запуск вышеуказанной...
328 просмотров
schedule
16.07.2023
Не удается вывести Generic для этого типа?
Компиляция этого короткого фрагмента на GHC 8.6.2:
{-# LANGUAGE DeriveGeneric, PolyKinds #-}
import GHC.Generics
data Foo f
= FA
| FB (f (Foo f))
deriving (Generic, Generic1)
Результаты в этой ошибке:
Can't make a derived...
352 просмотров
schedule
02.02.2023
Можно ли предоставить экземпляры по умолчанию некоторого класса типов X для моего класса типов Y?
Чтобы уточнить, часто можно предоставить реализации по умолчанию для функций экземпляра класса типов, но мне интересно, возможно ли также предоставить реализации по умолчанию для экземпляров класса типов других классов типов.
Например, скажем, я...
290 просмотров
schedule
09.02.2023