The sparsebit package

[Tags:bsd3, library]

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.


[Skip to Readme]

Properties

Versions 0.1, 0.2, 0.3, 0.5
Dependencies base, haskell98 [details]
License BSD3
Author Ahn, Ki Yung
Maintainer Ahn, Ki Yung <kya@pdx.edu>
Stability Unknown
Category Development, Data Structures
Home page http://kyagrd.dyndns.org/wiki/SparseBitmapsForPatternMatchCoverage
Uploaded Tue Mar 10 09:53:49 UTC 2009 by KiYungAhn
Distributions
Downloads 738 total (9 in the last 30 days)
Votes
0 []
Status Docs uploaded by user
Build status unknown [no reports yet]

Modules

[Index]

Downloads

Maintainer's Corner

For package maintainers and hackage trustees

Readme for sparsebit

Readme for sparsebit-0.5

Sparse Bitmaps for Pattern Match Coverage

Abstract:
  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:
  http://kyagrd.dyndns.org/wiki/SparseBitmapsForPatternMatchCoverage


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.