This library contains an alternative implementation of the ADP.Multi.Rewrite.*
modules in adp-multi.
It uses the same model (ADP.Multi.Rewriting.Model
) for rewriting functions,
but implements a different subword construction algorithm using the
OvertonFD
constraint solver implemented within the constraint programming
framework monadiccp.
It was developed as an experiment to reduce code size and eventually be able to generically construct subwords for any dimension. At the moment, it is slower than the standard implementation and supports one- and two-dimensional nonterminals only.
- Check out the git repository
- Run
cabal install
inside the checked out folder - Add
adp-multi-monadiccp
as a dependency to your cabal project - Instead of importing
ADP.Multi.Rewriting.All
in your grammar files, importADP.Multi.Constraint.All
The library is also published on Hackage.