In computer science, a parsing expression grammar, or PEG, is a type of analytic formal grammar, i.e. it describes a formal language in terms of a set of rules for recognizing strings in the language. The formalism was introduced by Bryan Ford in 2004 and is closely related to the family of top-down parsing languages introduced in the early 1970s. Syntactically, PEGs also look similar to context-free grammars (CFGs), but they have a different interpretation: the choice operator selects the first match in PEG, while it is ambiguous in CFG. This is closer to how string recognition tends to be done in practice, e.g. by a recursive descent parser.
Unlike CFGs, PEGs cannot be ambiguous; if a string parses, it has exactly one valid parse tree. This makes PEGs well-suited to parsing computer languages, but not natural languages.
Read more about Parsing Expression Grammar: Implementing Parsers From Parsing Expression Grammars, Advantages
Famous quotes containing the words expression and/or grammar:
“Parents do not give up their children to strangers lightly. They wait in uncertain anticipation for an expression of awareness and interest in their children that is as genuine as their own. They are subject to ambivalent feelings of trust and competitiveness toward a teacher their child loves and to feelings of resentment and anger when their child suffers at her hands. They place high hopes in their children and struggle with themselves to cope with their childrens failures.”
—Dorothy H. Cohen (20th century)
“All the facts of nature are nouns of the intellect, and make the grammar of the eternal language. Every word has a double, treble or centuple use and meaning.”
—Ralph Waldo Emerson (18031882)