Although, there will be one assignment on type checking and one on code generation, the description itself on these two topics is brief: 4 words only. This subject will focus on the front end. I intend to introduce a PG subject to focus more on the backend. COMP3131 or COMP9102 Programming Languages and Compilers Staff Contact: Dr J. Xue UC 6 S2 L3 T2 Prerequisites: COMP2011 or COMP9024 Note/s: Excluded COMP9102 or COMP3131 (respectively). Covers the fundamental principles in programming languages and implementation techniques for compilers (emphasis on compiler front ends). Course contents include: program syntax and semantics, formal translation of programming languages, finite-state recognisers and regular expressions, context-free parsing techniques such as LL(k) and LR(k), attribute grammars, syntax-directed translation, type checking and code generation. Lab: implementation of a compiler in a modern programming language for a small programming language.