Sparse bitmaps for pattern match coverage http://kyagrd.dyndns.org/wiki/SparseBitmapsForPatternMatchCoverage
|Latest on Hackage:||0.5|
This package is not currently in any snapshots. If you're interested in using it, we recommend adding it to Stackage Nightly. Doing so will make builds more reliable, and allow stackage.org to host generated Haddocks.
Pattern matching coverage over Algebraic Data Types(ADTs) has most often been studied in the context of pattern compilation algorithms. However, it is worth considering the pattern matching coverage problem in isolation, since general solutions will be independent of the specifics of any implementation or language.
We define an intuitive and mathematically well-established bit masking semantics for pattern match coverage. We design and implement a sparse bitmap data structure, which realizes this semantics in a compact and flexible manner. This bitmap data structure supports computing coverage solutions of large programs incrementally from coverage solutions of sub-programs. It can also be used as a common data representation for pattern coverage shared between different tools (e.g., compilers, linting tools, software analysis tools) that need pattern match coverage information.
You can see further details in the paper and the talk slides on the this URL:
Additional source files Type.hs and TestType.hs packaged with this library
provides the examples and QuickCheck extracted from the paper to demonstrate
how to use this library.