FORMAL LANGUAGES AND COMPILERS

FORMAL LANGUAGES AND COMPILERS
Course Code
CS 3012
Credit Points
15
Course Coordinator
Dr J R Lishman

Pre-requisites

CS 2007 and any Level 1 mathematics course.

Notes

(i) Assistive technologies may be required for any student who is unable to use a standard keyboard/mouse/computer monitor. Any students wishing to discuss this further should contact the School Disability Co-ordinator.
(ii) Non-graduating students would require the following background/experience: knowledge of common data structures and algorithms; intermediate level experience of the Java programming language; mathematics equivalent to higher level.

Overview

Alphabets, strings and languages, regular expressions and languages, finite state automata, output from automata, grammars and context free languages, syntax analysis, derivation trees, ambiguous grammars and inherently ambiguous languages, bottom-up syntax analysis, LR parsing, parser generator tools, translation, A mini-Compiler.

Structure

12 week course - 2 one-hour lectures and 1 two-hour tutorial per week.

Assessment

1st Attempt: 1 two-hour written examination (75%) and in-course assessment (25%). In order to pass the course, candidates must obtain a pass mark in the examination and in the overall combination of examination and in-course assessment (with the above weights).

Resit: 1 two-hour written examination (75%); 25% carried forward from original in-course assessment. Candidates must obtain a pass mark in the exam and in the overall combination of exam and in-course assessment.