Subject: Computer Science
Credit units: 3
Offered: Either Term 1 or Term 2
Weekly hours: 3 Lecture hours
College: Graduate and Postdoc Studies
Department: Computer Science


The definition and classification of formal grammars. A discussion of regular and context-free grammars with their relationships to automata. Precedence, operator precedence, LR(k) and LALR(k) grammars with their associated syntactic analyzers, symbol table techniques, intermediate forms of source programs, run-time organization, code generation and optimization. Interpreters and their relation to the compilation process. Introduces translator writing systems and compiler-compilers.

Upcoming class offerings

For full details about upcoming courses, refer to the class search tool or, if you are a current student, the registration channel in PAWS.


Examples of current or recently-offered class syllabus material can be found on the Open CourseWare website.

The syllabus is a public document that provides detail about a class, such as the schedule of activities, learning outcomes, and weighting of assignments and examinations. Please note that the examples provided in Open CourseWare do not represent a complete set of current or previous syllabus material. Rather, they are presented solely for the purpose of indicating what may be required for a given class.

For more information about syllabi, visit the Academic Courses Policy.