Recursive descent parsing for grammars with contexts
Recursive descent parsing for grammars with contexts
Recursive descent parsing for grammars with contexts
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
What a recursive <strong>descent</strong> is?subclass of <strong>grammars</strong> allowing recursive <strong>descent</strong>:LL(k)-<strong>grammars</strong>k look-ahead symbolsLL(1) context-free grammar generating { a n b n | n 0 }:S → aSb | ε★S() { a() {if (look-ahead is “a”) { if (current symbol is “a”)a(); S(); b(); advance position by 1} else error} }✧First compilers <strong>for</strong> Pascal are recursive <strong>descent</strong> parsers.Implemented “by hand” (N. Wirth, 1970).Program code can be easily generated automatically.✥✦Mikhail Barash<strong>Recursive</strong> <strong>descent</strong> <strong>for</strong> <strong>grammars</strong> <strong>with</strong> <strong>contexts</strong>