type-spine-0.1: A spine-view on types

Portabilitysee LANGUAGE pragmas (... GHC)



Kinds for the spine-view on types.



parameterKinds :: [Kind]Source

The set of kinds that this library will initially support as type parameters.

parseK_ :: Monad m => String -> m KindSource

The default number of parameters that this library will initially support.

The kinds consequent from parameterKinds and maxParameters.

qK :: QuasiQuoterSource

[qK|...|] is either the declaration of a type that takes one parameter of the corresponding kind, or an occurrence of that type constructor. (The name is an encoding of that parameter's kind based on prefix notation for application.)

forallAppsK :: (Kind -> Kind -> Q a) -> Q [a]Source

generateK pks n generates all Kinds with 0 to n parameters taken from pks.

Calls its argument once for each parameter and kind pair implied by maxParameters and parameterKinds.