Compiler construction 341

Module code COS 341
Qualification Undergraduate
Faculty Faculty of Engineering, Built Environment and Information Technology
Module content

This module will introduce the student to the fundamentals of compiler construction. These include: the structural difference between a high-level and a von-Neumann language, the meaning of syntax and semantics and what semantics-preserving correctness means; the concepts of regular expressions, finite automata, context-free grammars in the context of programming languages; the need to construct parse-trees for given programmes; the application of data structures and algorithms for the purpose of code-analysis, code-optimisation and register-allocation; and the limits of code-analysis in terms of undecideability and the halting problem.
After successful completion of the module, the student will have an understanding of the importance of compilers and will understand how to implement a compiler, in terms of its components, the scanner, parser, type checker and code-generator for a given grammar.

Module credits 18.00
Prerequisites COS 212
Contact time 1 practical per week, 2 lectures per week
Language of tuition English
Academic organisation Computer Science
Period of presentation Semester 1

The information published here is subject to change and may be amended after the publication of this information. The General Regulations (G Regulations) apply to all faculties of the University of Pretoria. It is expected of each student to familiarise himself or herself well with these regulations as well as with the information contained in the General Rules section. Ignorance concerning these regulations and rules will not be accepted as an excuse for any transgression.

Copyright © University of Pretoria 2020. All rights reserved.

FAQ's Email Us Virtual Campus Share