Вопросы по теме 'constraint-kinds'
Каков синтаксис видов ограничений для GHC 7.4.1?
Я получаю сообщение об ошибке, что Constraint не входит в область действия, когда я пытаюсь написать простой пример,
{-# LANGUAGE UndecidableInstances,
MultiParamTypeClasses,
KindSignatures,
Rank2Types,...
1515 просмотров
schedule
31.07.2023
Допустимые типы в функциях Numeric.AD
Мне не очень удается разобраться в основных принципах работы типов, включенных в пакет ad . Например, следующее работает отлично:
import Numeric.AD
ex :: Num a => [a] -> a
ex [x, y] = x + 2*y
> grad ex [1.0, 1.0]
[1.0, 2.0]
где...
398 просмотров
schedule
10.10.2022
Списки типов с ограничениями
Я пытаюсь создать список на уровне типов, но у меня возникли проблемы с выяснением того, как применять ограничения.
Мой базовый код:
data Foo z q = Foo1 (z q)
| Foo2 (z q)
class Qux q -- where ...
class Baz z -- where ...
class...
672 просмотров
schedule
03.06.2022
Сдерживающие ограничения
Могу написать следующее:
{-# LANGUAGE RankNTypes #-}
{-# LANGUAGE FlexibleInstances #-}
{-# LANGUAGE UndecidableInstances #-}
{-# LANGUAGE ConstraintKinds #-}
f :: Integral a => (forall b. Num b => b) -> a
f = id
И все хорошо....
79 просмотров
schedule
16.11.2023
Тип с более высоким типом в классе типов?
Чтобы узнать, является ли тип типом более высокого типа, ghci предоставляет:
Prelude> :k Maybe
Maybe :: * -> *
И попробовал тип класса, например:
Prelude> :k Functor
Functor :: (* -> *) -> Constraint
Почему я могу...
72 просмотров
schedule
05.10.2022
Как я могу выразить это ограничение?
Я хотел бы выразить Constraint по типам типа k -> k -> Type , что может быть сформулировано на английском языке как:
Тип s такой, что для всех x x' , y и y' , где Coercible x x' и Coercible y y' , Coercible (s x y) (s x'...
78 просмотров
schedule
16.05.2022