express-1.0.0: Dynamically-typed expressions involving function application and variables.
Copyright(c) 2019-2021 Rudy Matela
License3-Clause BSD (see the file LICENSE)
MaintainerRudy Matela <>
Safe HaskellNone



Allows automatic derivation of Express typeclass instances.



deriveExpress :: Name -> DecsQ Source #

Derives an Express instance for the given type Name.

This function needs the TemplateHaskell extension.

If -:, ->:, ->>:, ->>>:, ... are not in scope, this will derive them as well.

deriveExpressCascading :: Name -> DecsQ Source #

Derives a Express instance for a given type Name cascading derivation of type arguments as well.

deriveExpressIfNeeded :: Name -> DecsQ Source #

Same as deriveExpress but does not warn when instance already exists (deriveExpress is preferable).