aboutsummaryrefslogtreecommitdiff
path: root/textproc/peg/pkg-descr
blob: 67ab5201bb9c99df13d640c5f3fa22cbd3eb39e8 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
peg and leg are tools for generating recursive-descent parsers: programs
that perform pattern matching on text.  They processes a Parsing
Expression Grammar (PEG) [Ford 2004] to produce a program that
recognises legal sentences of that grammar.  peg processes PEGs written
using the original syntax described by Ford; leg processes PEGs written
using slightly different syntax and conventions that are intended to
make it an attractive replacement for parsers built with lex and
yacc.  Unlike lex and yacc, peg and leg support unlimited backtracking,
provide ordered choice as a means for disambiguation, and can combine
scanning (lexical analysis) and parsing (syntactic analysis) into a
single activity.

[Ford 2004] Bryan Ford, Parsing Expression Grammars: A Recognition-Based
Syntactic Foundation. ACM SIGPLAN Symposium on Principles of Programming
Languages (POPL), 2004.