Generics.Pointless.HFunctors

type s :~> v

Higher-order functors

data HId f a

data HConst c f a

data HParam f a

data HFun g f a

data (g :+~: h) f a

data (g :*~: h) f a

data (g :@~: h) f a

data HFix f a

data AnnH f

Application of higher-order functors to a regular functor

type family HRep g f :: * -> *

Functor composition as the fixpoint of an higher-order functor (using the fixpoint of the first functor)

type family App f g :: (* -> *) -> * -> *

User-defined polymorphic types as fixed points of higher-order functors

type family HF t :: (* -> *) -> * -> *

type H t a

class Hu t

Foldable higher-order functors

class FMonoid f

class HFoldable f