Unit name | Language Engineering |
---|---|
Unit code | COMS22201 |
Credit points | 20 |
Level of study | I/5 |
Teaching block(s) |
Teaching Block 4 (weeks 1-24) |
Unit director | Dr. Steve Gregory |
Open unit status | Not open |
Pre-requisites |
Programming and Algorithms I and II, COMS12200 Introduction to Computer Architecture |
Co-requisites |
none |
School/department | Department of Computer Science |
Faculty | Faculty of Engineering |
The unit seeks to provide an introduction to the specification of programming languages and the design of compilers.
It aims to give an overview of the entire language engineering process, from the syntax and semantics of programs to compilation and run-time systems.
The use of tools will be favoured where appropriate, and theoretical topics will be introduced as needed to support this approach.
At the end of this unit, a student will be able to:
2 lectures per week supported by a combination of laboratory and problem classes.
50% Coursework - consisting of two assignments assessing both theoretical and practical elements of the unit content, and involving a combination of software development and report writing - and 50% Exam
H. Nielson and F. Nielson. "Semantics with applications: a formal introduction". A. Appel. "Modern compiler implementation in Java".