@hackage unbound-generics0.0.0.90

Reimplementation of Unbound using GHC Generics

unbound-generics

Build Status

This is a reimplementation of (parts of) unbound but using GHC generics instead of RepLib.

Differences from unbound

For the most part, I tried to keep the same methods with the same signatures. However there are a few differences.

  1. fv :: Alpha t => t -> Fold t (Name n)

    The fv method returns a Fold (in the sense of the lens library), rather than an Unbound.Util.Collection instance. That means you will generally have to write toListOf fv t or some other summary operation.

  2. isPat :: Alpha t => t -> DisjointSet AnyName

    You should olnly notice this if you're implementing an instance of Alpha by hand (rather than by using the default generic instance). The original unbound returned a Maybe [AnyName] here with the same interpretation as DisjointSet: Nothing means an inconsistency was encountered, or Just the free variables of the pattern.