Topics
- Lexical analysis: regular expressions, NFAs, DFAs, conversion
algorithms from regular expressions to NFAs, DFAs and min-state DFAs.
- Syntax analysis: grammars, parsing, left factoring, left
recursion, ambiguity, LL(1) parsing, LR parsing (LR(1), SLR(1),
LR(1), LALR(1)).
- Intermediate code generation: tree-address code, quadruples and
triples, syntax-directed translation, optimisation.
- Run-time structures: activation frames, memory/heap management and
manual memory allocation, garbage collection.
In the labs we'll be using C, flex and bison.
Recommended text
I'll be following this text fairly closely, so it's strongly
recommended that you get a copy.
Timetable:
- Lectures: Tuesdays at 10.00 in CSR, Wednesdays at 09.00 in CS2
- Labs: Mondays 11.00-13.00 in Lab 4
More course information will be available through the
university's
moodle system.