Compiler
Getting Started
- Grammar - Basic concepts and grammar theory
- Lexical Analysis - Tokenizers and finite automata
Syntax Analysis
- Top-Down Parsing - LL(1) parsing and recursive descent
- Bottom-Up Parsing - LR(0), SLR, and LALR parsing
- Abstract Syntax Tree - AST construction and algorithms
Core Analysis
- Semantic Analysis - Type checking and symbol tables
- Intermediate Representation - IR and optimization
- Optimization - Local, global, and inter-procedural optimizations
Code Generation
- Code Generation - Stack and register-based code generation
- Garbage Collection - Mark and sweep, stop and copy
Examples
- Examples - C declaration interpreter, Cool language, parser implementation