The parsec1 package
Parsec is designed from scratch as an industrial-strength parser library. It is simple, safe, well documented (on the package homepage), has extensive libraries and good error messages, and is also fast.
This package is the core haskell98 part of the parsec2 package, intended to preserve its simplicity and portability.
Note, that the module names overlap with those of parsec from the Haskell Platform, therefore I do not recommend to unconditionally use parsec1 (or parsec2 and parsec3) as dependency in cabal files of packages for hackage. But you may want to develop your code using these limited and portable parsec1 functions and finally change the dependency from parsec1 to parsec in order to avoid module ambiguities for users just installing your package. Your own module ambiguities are best avoided by hiding packages.
This version only differs from the pervious one by improved error messages for try (positions are not reset), tokens and thus string (longer unexpected strings are now reported to match the error position). The notFollowedBy-parser was generalized (as in parsec-3) so characters in messages are now shown in single instead of double quotes. Also (as since parsec-3.1.2) lookAhead no longer consumes tokens on success (so that the many-parser can detect this).
|Versions||188.8.131.52, 184.108.40.206, 220.127.116.11, 18.104.22.168, 22.214.171.124, 126.96.36.199, 188.8.131.52|
|Dependencies||base (<5) [details]|
|Author||Daan Leijen <firstname.lastname@example.org>|
|Uploaded||Mon Feb 16 14:06:36 UTC 2015 by ChristianMaeder|
|Downloads||1701 total (101 in the last 30 days)|
|Rating||(no votes yet) [estimated by rule of succession]|
|Status||Docs available [build log]
Last success reported on 2015-02-16 [all 1 reports]
Hackage Matrix CI
For package maintainers and hackage trustees