Компиляторы
Контекстно-свободные грамматики
TODO: Зачем это нужно? Захватывающее введение.
- **TODO:** Практический пример 1
- **TODO:** Практический пример 2
- **TODO:** Практический пример 3
Bnf
**TODO:** Описание концепции "Bnf".
**TODO:** Ключевая информация по теме.
TODO: Вопрос для проверки понимания?
Ebnf
**TODO:** Описание концепции "Ebnf".
**TODO:** Ключевая информация по теме.
TODO: Вопрос для проверки понимания?
Derivations
**TODO:** Описание концепции "Derivations".
**TODO:** Ключевая информация по теме.
TODO: Вопрос для проверки понимания?
Parse Trees
**TODO:** Описание концепции "Parse Trees".
**TODO:** Ключевая информация по теме.
TODO: Распространённое заблуждение
TODO: Правильное понимание
TODO: Объяснение почему
TODO: Вопрос для проверки понимания?
Ключевые идеи
- **TODO:** Главная мысль 1
- **TODO:** Главная мысль 2
- **TODO:** Главная мысль 3
Связанные темы
CFG задаёт структуру языка. Дальше:
- Recursive descent — LL-парсер строится напрямую из правил CFG
- LR-парсинг — Более сильный класс парсеров - shift-reduce по таблице
Вопросы для размышления
- TODO: Вопрос для размышления 1?
- TODO: Вопрос для размышления 2?
- TODO: Вопрос для размышления 3?
Связанные уроки
- fl-12-cfg — Formal CFG theory from formal languages applied to parsing
- comp-09-lexer-generators — Tokens feed into the grammar rules
- comp-11-recursive-descent — Recursive descent directly implements LL grammars
- comp-12-lr-parsing — LR parsing works with a broader class of CFGs
- fl-02-chomsky — Chomsky hierarchy places CFGs in context
- plt-25-parser