Module/Course Description

Course Title: Compiler Design

Course Code: UU-COM-4003

Programme: Bachelor of Science (BSc) in Computer Science - MW

Credits: 3.00

Course Description:

Objectives of the Course:

• present and explain the compilation phases
• discuss the application of regular expressions in lexical scanners
• discuss parsing (concrete and abstract syntax, abstract syntax trees) and application of context-free grammars in recursive-descent parsing and bottom-up parsing
• discuss declarations and types
• provide student with knowledge on run-time environments, intermediate code representations and code generation principles
• experiment with the design and implementation of a compiler for a small language

Learning Outcomes:

1. demonstrate the various stages of the basic language translation process (lexical, parsing, code generation, optimization) and machine-dependent vs. machineindependent aspect of translation
2. recognize the underlying formal models such as finite state automata and their connection to language definition through regular expressions and grammars
3. use parsing techniques, including LL(1) and LR parsers
4. translate statements into three-address code
5. identify the properties of a variable and discuss type incompatibility
6. differentiate static vs. dynamic storage allocation and the usage of activation records to manage program modules and their data
7. produce a semantically equivalent target program, given an intermediate representation, along with symbol table information,
8. design and implement a simple language translator using automated tools, such lexical and parser generators lexx/yacc

Prerequisites: UU-ACG-1000, UU-MKT-2000, UU-MAN-2010, UU-BBA-2000, UU-ENG-1000, UU-ENG-1001, UU-ENG-1005, UU-COM-1000, UU-MTH-1000, UU-MTH-1005, UU-MTH-2000, UU-MTH-3000, UU-COM-1100, UU-COM-1101, UU-COM-2004, UU-COM-2000, UU-COM-2001, UU-COM-2002, UU-COM-2003, UU-COM-3000, UU-COM-3002, UU-COM-3003, UU-COM-3004, UU-COM-3005, UU-COM-4004, UU-COM-4008, UU-COM-4009, UU-COM-4010, UU-BA-IND100, UU-FNT-103, UU-BBA-2010-BCS, UU-BBA-1000-BCS


This site uses cookies and other tracking technologies to assist with navigation and your ability to provide feedback, analyse your use of our products and services, assist with our promotional and marketing efforts, and provide content from third partiesCookie Policy