1. Specify and analyse the lexical, syntactic and semantic structures of advanced language features
2. Separate the lexical, syntactic and semantic analysis into meaningful phases for a compiler to undertake language translation
3. Write a scanner, parser, and semantic analyser without the aid of automatic generators
4. Turn fully processed source code for a novel language into machine code for a novel computer
5. Describe techniques for intermediate code and machine code optimisation
6. Design the structures and support required for compiling advanced language features.
7.The main objective of this course is to introduce the major concept areas of language translation and compiler design and to develop an awareness of the function and complexity of modern compilers
8.This course is a study of the theory and practice required for the design and implementation of interpreters and compilers for programming languages.