Safe Haskell | None |
---|---|
Language | Haskell2010 |
Examples for the use of Pinchot. You wil want to look at the source code for the modules; examining just the Haddocks shows you the code that the Template Haskell ultimately generates.
In Pinchot.Examples.Postal is an example grammar for US postal addresses.
Pinchot.Examples.PostalAstAllRules shows you how to use
allRulesToTypes
and earleyGrammar
, while
Pinchot.Examples.PostalAstRuleTree shows you how to use
ruleTreeToTypes
and earleyGrammar
.
Pinchot.Examples.AllEarleyGrammars shows you how to use
allEarleyGrammars
.
Pinchot.Examples.AllRulesRecord and
Pinchot.Examples.EarleyProduct show you how to use
allRulesRecord
and earleyProduct
.
Three executables are included in the pinchot
package. To get
them, compile pinchot
with the executables
Cabal flag.
The print-postal-grammar
executable will pretty print the Haskell
source that results from applying earleyGrammar
to the postal
grammar.
The postal-parser
executable takes as its first and sole argument
a string. It parses the string using the postal
grammar and
pretty prints the resultin parses to standard output.
The parrot
executable takes as its first and sole argument a
string. It parses the string using the postal
grammar. For
every result that is returned (there might be zero, or one, or more
than one) the result is reduced to terminal symbols using the
terminals
function and the result is printed to standard output.