unbound-generics-0.2: Support for programming with names and binders using GHC Generics

Copyright(c) 2014, Aleksey Kliger
LicenseBSD3 (See LICENSE)
MaintainerAleksey Kliger
Stabilityexperimental
Safe HaskellNone
LanguageHaskell2010
ExtensionsDeriveGeneric

Unbound.Generics.LocallyNameless.Bind

Contents

Description

The fundamental binding form. The type Bind p t allows you to place a pattern p in a term t such that the names in the pattern scope over the term. Use bind and unbind and lunbind to work with Bind p t

Synopsis

Name binding

data Bind p t Source

A term of type Bind p t is a term that binds the free variable occurrences of the variables in pattern p in the term t. In the overall term, those variables are now bound. See also bind and unbind and lunbind

Constructors

B p t 

Instances

(Subst c b, Subst c a, Alpha a, Alpha b) => Subst c (Bind a b) 
(Show p, Show t) => Show (Bind p t) 
Generic (Bind p t) 
(NFData p, NFData t) => NFData (Bind p t) 
(Alpha p, Alpha t) => Alpha (Bind p t) 
type Rep (Bind p t)