Parsec: Difference between revisions
BrettGiles (talk | contribs) m (Changing combinator link to singular) |
m (Small typo correction (langugge -> language)) |
||
Line 15: | Line 15: | ||
[[Combinator]]s to create larger expressions. Combinator parsers are | [[Combinator]]s to create larger expressions. Combinator parsers are | ||
written and used within the same programming language as the rest of the | written and used within the same programming language as the rest of the | ||
program. The parsers are first-class citizens of the | program. The parsers are first-class citizens of the language , unlike | ||
[[Happy]] parsers, which must be generated via a preprocessor. | [[Happy]] parsers, which must be generated via a preprocessor. | ||
Revision as of 00:41, 15 January 2007
Parsec
Parsec is an industrial strength, monadic parser combinator library for Haskell. It can parse context-sensitive, infinite look-ahead grammars but it performs best on predictive (LL[1]) grammars.
See the Parsec site for downloads and documentation.
Usage
Parsec lets you construct parsers by combining higher-order Combinators to create larger expressions. Combinator parsers are written and used within the same programming language as the rest of the program. The parsers are first-class citizens of the language , unlike Happy parsers, which must be generated via a preprocessor.
Much more documentation can be found on the parsec site.
This article is a stub. You can help by expanding it.