Компиляторы
LR-парсинг: SLR, LALR, CLR
TODO: Зачем это нужно? Захватывающее введение.
- **TODO:** Практический пример 1
- **TODO:** Практический пример 2
- **TODO:** Практический пример 3
Shift Reduce
**TODO:** Описание концепции "Shift Reduce".
**TODO:** Ключевая информация по теме.
TODO: Вопрос для проверки понимания?
Lr Items
**TODO:** Описание концепции "Lr Items".
**TODO:** Ключевая информация по теме.
TODO: Вопрос для проверки понимания?
Parse Tables
**TODO:** Описание концепции "Parse Tables".
**TODO:** Ключевая информация по теме.
TODO: Вопрос для проверки понимания?
Conflicts
**TODO:** Описание концепции "Conflicts".
**TODO:** Ключевая информация по теме.
TODO: Распространённое заблуждение
TODO: Правильное понимание
TODO: Объяснение почему
TODO: Вопрос для проверки понимания?
Ключевые идеи
- **TODO:** Главная мысль 1
- **TODO:** Главная мысль 2
- **TODO:** Главная мысль 3
Связанные темы
LR-парсер - shift-reduce по таблице. Дальше:
- Parser generators — Yacc/Bison/ANTLR строят LR-таблицу из грамматики
- AST — Reduce-действия создают узлы синтаксического дерева
Вопросы для размышления
- TODO: Вопрос для размышления 1?
- TODO: Вопрос для размышления 2?
- TODO: Вопрос для размышления 3?
Связанные уроки
- comp-11-recursive-descent — Understanding top-down parsing helps contrast with LR
- comp-10-cfg — LR handles a strict superset of LL grammars
- comp-14-parser-generators — YACC/Bison generate LR parsers from grammar specs
- fl-12-cfg — LR(k) grammar class is the formal basis
- ds-03-stacks — LR parser state machine uses explicit stack for shift-reduce
- plt-25-parser