CMPS 404 - Compiler Construction

Compilers Construction - CMPS 404

Class Meeting: Friday 01:00 - 03:00

Course Objectives:

The course aims to provide students with the knowledge of the main ideas that can be used to construct translators for a wide variety of languages and machines and how to use this knowledge to learn how to design and implement compilers.

Course Outcomes:
  
    1. Student will be able to understand the sequence of phases of the compilation process: the lexical analysis, syntax analysis, semantics analysis and the code generation and optimization phases.

    2. Student will be able to understand different algorithms for implementing a lexical analyzer.

    3. Student will be able to understand regular expressions and their applications.

    4. Student will be able to understand different algorithms for implementing Top-down and Bottom-up parsing.

    5. Student will be able to implement a lexical analyzer (scanner) and syntax analyzer (parser) manually using some imperative programming language (such as C++ or Java)

    6. Student will be able to implement a lexical analyzer (scanner) and syntax analyzer (parser) by using some packages (such as Flex and Yacc).

Download course syllabus as PDF