Вопросы по теме 'deriving'
haskell каким-либо образом генерировать производные экземпляры для примерно кортежно-изоморфных типов данных?
Предположим, у меня есть тип данных, например
data D a = D a a a
и класс типов
class C c ...
instance (C c1, C c2) => C (c1, c2)
Затем я хочу иметь возможность писать
data D a = D a a a deriving C
и сгенерируйте...
1212 просмотров
schedule
02.12.2022
js_of_ocaml и Deriving_Json
Мне нужна помощь, чтобы заставить работать js_of_ocaml. В сети не так много информации об этом, и руководство очень скудное (нет фрагментов или примеров использования, нет разделов комментариев).
У меня на сервере есть модуль Card с записью...
652 просмотров
schedule
07.04.2023
Получение экземпляра Show на основе Haskell
Я играю с красно-черным деревом:
-- Taken from Okasaki 1999
module RedBlackTree where
--node coloring data
--a node is R (red) or B (black)
data Color = R | B
--tree constructor
--a RBT can be E (empty) or be T (a non empty tree)
data RBT e = E...
5882 просмотров
schedule
28.04.2022
Включение -fno-warn- для недоступного кода в GADT
Учитывая GADT , проиндексированный фантомной переменной, я могу использовать автономный вывод для создания некоторых простых экземпляров.
data Client
data Temporary
data Permanent
data Token ty where
ClientToken :: Token Client...
101 просмотров
schedule
28.05.2022
Получение Data.Complex в Haskell
У меня есть код, который выглядит примерно так:
import Data.Complex
data Foo = N Number
| C ComplexNum
data Number = Int Integer
| Real Float
| Rational Rational
deriving Show
data ComplexNum = con1...
1506 просмотров
schedule
19.04.2022
Haskell: получение типов Show для Fix
Я пытаюсь реализовать рекурсивный тип данных, используя recursion-schemes . Я хотел бы иметь возможность распечатать его.
import Data.Functor.Foldable
data T1F a = Foo deriving Show
type T1 = Fix T1F
data T2 = Bar T1 deriving Show -- error...
498 просмотров
schedule
12.11.2022
Получение Haskell Показать ошибку
Я провел небольшое исследование о цветных сетях Петри для университетской оценки, и мне нужно реализовать их в Haskell. Я использовал этот документ в качестве отправной точки.
Когда я пытаюсь импортировать этот модуль в Haskell:
module...
485 просмотров
schedule
20.07.2023
DeriveAnyClass против пустого экземпляра
Предположим, что у меня есть это семейство типов, которое выдает ошибку настраиваемого типа во время компиляции, если переданный ему тип не является записью:
type family IsRecord (a :: Type) where
...
Теперь у меня есть этот класс типа,...
1587 просмотров
schedule
24.03.2023
Как определить экземпляр MonadUnliftIO для нового типа с фантомной переменной типа?
Связанный вопрос - Безопасно ли наследовать MonadThrow, MonadCatch, MonadBaseControl, MonadUnliftIO и т. Д.? - где я включил оба - DeriveAnyClass и GeneralizedNewtypeDeriving для компиляции кода, но не стал смотреть на зловещие предупреждения....
364 просмотров
schedule
25.04.2023
Как написать собственный декоратор ppx в рескрипт?
Мне нужно сгенерировать значение с типом, отличным от моего переданного типа. Я впервые пишу на ocaml-подобном, и, например, в знакомом мне haskell я бы использовал Data.Generics. Как я понял, мне нужно использовать декоратор и ppx. Я написал...
219 просмотров
schedule
11.11.2022