Specify the binding structure of your data type with an expressive set of type
combinators, and unbound-generics handles the rest! Automatically derives
alpha-equivalence, free variable calculation, capture-avoiding substitution,
and more. See 'Unbound.Generics.LocallyNameless' to get started.
This is an independent re-implementation of
<http://hackage.haskell.org/package/unbound Unbound> but using
GHC.Generics> instead of <http://hackage.haskell.org/package/RepLib RepLib>.
See the accompanying README for some porting notes.