spars: A sparse set-based parsing library for Haskell.

[ library, mit, text ] [ Propose Tags ] [ Report a vulnerability ]

Spars is a lightweight parsing package that uses sets to store parse results to avoid duplicates.


[Skip to Readme]

Modules

  • Spars

Downloads

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees

Candidates

Versions [RSS] 0.1.0.0
Change log CHANGELOG.md
Dependencies base (>=4.14.0.0 && <4.15), containers (>=0.6.2.1 && <0.7) [details]
License MIT
Copyright © Anselm David Schüler 2020
Author anselmschueler
Maintainer git@anselmschueler.com
Category Text
Home page https://github.com/schuelermine/spars
Bug tracker https://github.com/schuelermine/spars/issues
Uploaded by anselmschueler at 2020-08-26T00:53:10Z
Distributions
Downloads 192 total (5 in the last 30 days)
Rating (no votes yet) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs not available [build log]
All reported builds failed as of 2020-08-26 [all 2 reports]

Readme for spars-0.1.0.0

[back to package description]

spars

Spars is a lightweight parsing package that uses sets to store parse results to avoid duplicates.

The name is a contraction of set parse and a pun on the word sparse.


Spars explicitly does not implement instances of Monad, Applicative and other classes. This is because using sets requires that all functions need the result type of the parser to be orderable.

Because there are no typeclass instances, the Parser type is not a newtype construction, but just a type synonym.

Note: This means that you cannot use do-notation with Spars.


Spars has a dependency on containers in order to use maps and sets from that package.


Some of the functions in this package have been written with the help of friendly strangers online.