AP
show
, либо протаскивайте переменную типа в конструктор вашего типаSize: a a a
AP
show
, либо протаскивайте переменную типа в конструктор вашего типаAP
AP
AP
AP
data T a b c -> T a (b -> c)
AP
data M a (b :: a -> c) = MkM a b
откуда-то нужно взять c
после переноса сигнатуры в правую часть. Тут либо слева упомянуть, либо forall сделать.data M a where
MkM :: forall c. a -> (a -> c) -> M a
то с c
будут проблемы — информация об этом типе стирается и с результатом применения сохраняемой в MkM функции мало что сделать можно будетL
data HList (ts :: [(Constraint, Type)]) where
HNil :: HList '[]
HCons :: (c => t) -> HList ts -> HList ('(c, t):ts)
infixr `HCons`
type NullConstraint = () :: Constraint
tst :: HList '[ '(Show a, a -> String), '(NullConstraint, b -> b)]
tst = show `HCons` id `HCons` HNil
head' :: HList ('(c, t):ts) -> (c => t)
head' (HCons f _) = f
main = do
print $ head' tst "asd"
print $ head' tst 123
JS
B
libHS.... No such file or directory
. Создал ~/.cabal/config
и закинул туда конфиг с Арчвики/Haskell. Это ничего не поменяло, но суть проблемы в том, что и на арчвики, и в других гайдах cabal update
сказано прожимать до конфига, то есть он и так работать должен, а у меня не работает. Собственно, тупик. Как пофиксить?JS
B
newParallelJobControl: not a sensible number of jobs: 0
CallStack (from HasCallStack):
error, called at ./Distribution/Client/JobControl.hs:101:3 in main:Distribution.Client.JobControl