Languages and Compilers

The details
Computer Science and Electronic Engineering (School of)
Colchester Campus & Apprenticeship Location
Spring Special
Undergraduate: Level 6
Monday 14 January 2019
Friday 22 March 2019


Requisites for this module



Key module for

BSC YHG1 Digital and Technology Solutions (Software Engineer)

Module description

Aims/ Learning Outcomes

The aim of this module is to introduce the students to formal languages and compilers.

After completing this module, students will be expected to be able to:

1. Demonstrate an understanding of formal languages
2. Describe formal languages using BNF notation
3. Explain the link between finite state automata and regular expressions
4. Describe the syntax and semantics of basic programming language elements
5. Demonstrate an understanding of the structure of compilers and their main components
6. Implement key parts of a compiler for a simple language


Introduction to formal languages
-Regular and context-free grammars
-Backus-Naur Form notation (BNF)
-Finite state automata
-Introduction to compilers
-Syntax and semantics of basic programming languages elements
-Lexical analysis
-Static analysis
-Code Generation

Module aims

No information available.

Module learning outcomes

No information available.

Module information

No additional information available.

Learning and teaching methods

Work-based-learning supported by online course material and webinars.


This module does not appear to have a published bibliography.

Assessment items, weightings and deadlines

Coursework / exam Description Deadline Weighting
Coursework   Assignment 1: Expression Analyser    37.50% 
Coursework   Assignment 2: Small Compiler    62.50% 
Exam  120 minutes during Summer (Main Period) (Main) 

Overall assessment

Coursework Exam
40% 60%


Coursework Exam
0% 0%
Module supervisor and teaching staff
Dr Chris Fox, email: foxcj@essex.ac.uk.
Dr Chris Fox
Email: csee-schooloffice@essex.ac.uk Telephone: 01206 872770



External examiner

Dr Ke Chen
The University of Manchester
Senior Lecturer
Available via Moodle
No lecture recording information available for this module.


Further information

Disclaimer: The University makes every effort to ensure that this information on its Module Directory is accurate and up-to-date. Exceptionally it can be necessary to make changes, for example to programmes, modules, facilities or fees. Examples of such reasons might include a change of law or regulatory requirements, industrial action, lack of demand, departure of key personnel, change in government policy, or withdrawal/reduction of funding. Changes to modules may for example consist of variations to the content and method of delivery or assessment of modules and other services, to discontinue modules and other services and to merge or combine modules. The University will endeavour to keep such changes to a minimum, and will also keep students informed appropriately by updating our programme specifications and module directory.

The full Procedures, Rules and Regulations of the University governing how it operates are set out in the Charter, Statutes and Ordinances and in the University Regulations, Policy and Procedures.