Module 02578 (2006)
Syllabus page 2006/2007
06-02578
Compilers & Languages
Level 3/H
Links | Outline | Aims | Outcomes | Prerequisites | Teaching | Assessment | Books | Detailed Syllabus
The Module Description is a strict subset of this Syllabus Page. (The University module description has not yet been checked against the School's.)
Relevant Links
Outline
The module describes the structure of a typical compiler. The phases of compilation, from lexical analysis to code generation and simple optimisation, and the main techniques used in each phase will be covered. Some modern developments will be discussed.
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: | Assessed by: | |
| 1 | explain and apply the formalisms used in compiler construction, such as context-free grammars | Examination, continuous assessment |
| 2 | program simple language recognizers | Examination, continuous assessment |
| 3 | perform the main analyses and transformations used in compilation | Examination, continuous assessment |
Restrictions, Prerequisites and Corequisites
Restrictions:
May not be taken in conjunction with 06-15255 (Compilers & Languages (Extended)).
Prerequisites:
06-05934 (Models of Computation)
Co-requisites:
None
Teaching
Teaching Methods:
2 hrs/week
Contact Hours:
Assessment
- Sessional: 1.5 hr examination (80%), continuous assessment (20%).
- Supplementary (where allowed): By examination only with the continuous assessment carried forward.
Recommended Books
| Title | Author(s) | Publisher, Date |
| Modern Compiler Design | Dick Grune, Henri E. Bal, Ceriel J.H. Jacobs and Koen Langendoen | 2000 |
Detailed Syllabus
- Introduction: phases of compilation
- Lexical analysis and regular expressions
- Parsing:
- Context-free grammars
- Top-down parsing
- Bottom-up parsing
- Compiler construction tools
- Attribute Grammars
- Data flow analysis
- Code generation
- Memory management
- Memory management with explicit deallocation
- Garbage collection
- Procedure call and stack frames
Last updated: 25 May 2006
Source file: /internal/modules/COMSCI/2006/xml/02578.xml
Links | Outline | Aims | Outcomes | Prerequisites | Teaching | Assessment | Books | Detailed Syllabus