Compilers

Queen Mary, University of London

Course Description

  • Course Name

    Compilers

  • Host University

    Queen Mary, University of London

  • Location

    London, England

  • Area of Study

    Computer Engineering, Computer Programming, Computer Science, Electronics Engineering

  • Language Level

    Taught In English

  • Course Level Recommendations

    Upper

    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.

    Hours & Credits

  • UK Credits

    15
  • Recommended U.S. Semester Credits
    4
  • Recommended U.S. Quarter Units
    6
  • Overview

    Credits: 15.0
    Overlap: None
    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
    Level: 6

Course Disclaimer

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.