Module 06-15255 (2011)
Compilers & Languages (Extended)
Level 4/M
Alan Sexton | Semester 2 | 10 credits |
Co-ordinator: Alan Sexton
Reviewer: Hayo Thielecke
The Module Description is a strict subset of this Syllabus Page.
Aims
The aims of this module are to:
- give an overview of issues and techniques in compilation of high-level programming languages
Learning Outcomes
On successful completion of this module, the student should be able to:
- explain and apply the formalisms used in compiler construction, such as context-free grammars
- perform the main analyses and transformations used in compilation
- use compiler construction tools, such as parser generators
Taught with
- 06-02578 - Compilers & Languages
Teaching methods
2 hrs/week
Assessment
- Sessional: 1.5 hr examination (60%), class tests (20%), mini-project (20%).
- Supplementary: 1.5 hr examination (80%), mini-project (20%).
Detailed Syllabus
- Introduction: phases of compilation
- Parsing
- Context-free grammars
- Top-down parsing
- Bottom-up parsing
- Compiler construction tools
- Data flow analysis
- Code generation
- Call stack and stack frames
- Contents and layout of stack frames
- Static link and pointers into the stack
- Compilation of objects and classes
- Memory management
- Memory management with explicit deallocation
- Garbage collection
- Copying garbage collection