The attoparsec-parsec package
This package provides an implementation of Data.Attoparsec.Text in terms of Parsec. It can be used to write parsers that can be compiled against both Attoparsec and Parsec.
Attoparsec is an awesome and very fast library, but it still has a weak point: It does not generate very useful error messages on parse errors. Compiling an Attoparsec parser against Parsec can be useful for at least two scenarios.
Parsec can be used while developing Attoparsec parsers, so that you get better error messages on failing test cases.
You can use Attoparsec for parsing, so that you benefit from it's speed. And on parse errors you can re-parse the input with Parsec, so that you can display a useful error message to the user.
A simple usage example is here: https://github.com/sol/attoparsec-parsec#readme
|Versions||0.0.0, 0.0.1, 0.0.2|
|Dependencies||attoparsec (≥0.10.0.0), base (4.*), parsec (≥3.1.2), text|
|Copyright||(c) 2011, 2012 Simon Hengel|
|Author||Simon Hengel <email@example.com>|
|Maintainer||Simon Hengel <firstname.lastname@example.org>|
|Source repository||git clone https://github.com/sol/attoparsec-parsec|
|Upload date||Mon Nov 26 18:54:42 UTC 2012|