Queen Mary, University of London
Area of Study
Computer Engineering, Computer Programming, Computer Science, Electronics Engineering
Taught In English
Course Level Recommendations
ISA offers course level recommendations in an effort to facilitate the determination of course levels by credential evaluators.We advice each institution to have their own credentials evaluator make the final decision regrading course levels.
Recommended U.S. Semester Credits4
Recommended U.S. Quarter Units6
Hours & Credits
Prerequisite: ECS401 ECS414 ECS421
In this module, the students will learn how modern compilers work. A compiler is a tool for translating computer programs written in a higher-level programming language (such as Java or C) to a lower-level language or machine code. Major components of a compiler are lexical and syntactic analysis, semantic analysis, code generation and optimization. The module will provide an introduction to a range of concepts in programming language design and implementation, including runtime organization, memory management, assembler, linker, loader, static vs dynamic types and scopes, compilers vs interpreters, just-in-time compilation, bootstrapping, data-flow analysis, and link-time optimizations. The coursework includes 3-5 programming assignments, each of which builds a different component of the compiler. The students are encouraged to work in small teams. At the end of the semester, each team will have implemented a working (albeit simple) compiler from basic blocks and templates provided. Most students find it very rewarding experience.
Assessment: 50.0% Examination, 50.0% Coursework
Courses and course hours of instruction are subject to change.
Eligibility for courses may be subject to a placement exam and/or pre-requisites.
Some courses may require additional fees.
Credits earned vary according to the policies of the students' home institutions. According to ISA policy and possible visa requirements, students must maintain full-time enrollment status, as determined by their home institutions, for the duration of the program.
Please reference fall and spring course lists as not all courses are taught during both semesters.
Please note that some courses with locals have recommended prerequisite courses. It is the student's responsibility to consult any recommended prerequisites prior to enrolling in their course.