← All posts tagged СЯУ

segfault
СЯУ Haskell Если у тайпкласса несколько параметров, то компилятор будет ворнинговать на сироток, если инстанс определен в модуле с одим из типов в инстансе. Инстанс должен находиться либо в модуле, где определены все типы из инстанса, либо в модуле с тайпклассом. Подстава ...
segfault
СЯУ slow кэп Haskell Можно сделать ADT, запромоученные конструкторы которого будут содержать тайплитералы, если в качестве типов полей использовать кайнды Symbol и Nat

data T = T Nat Symbol

λ> :t Proxy :: Proxy ('T 10 "hello")
Proxy :: Proxy ('T 10 "hello") :: Proxy ('T 10 "hello")
segfault
СЯУ slow Haskell Тайпфемили нельзя частично применять, зато можно сделать обертку вида
newtype W this that tag = W { unW :: TypeFamily this that tag }
которую уже можно использовать например в виниле, например так:
Rec (W This That] '[Tag1, Tag2, ...]