Skip to main content

CS325 - Compiler Design

  • Module code: CS325
  • Module name: Compiler Design
  • Department: Computer Science
  • Credit: 15

Content and teaching | Assessment | Availability

Module content and teaching

Principal aims

The module will provide a through introduction to the principles of compiler design, with an emphasis on general solutions to common problems as well as techniques for putting the extensive theory into practice.

Principal learning outcomes

A successful student will have acquired the skills to understand, develop, and analyze recognizers for programming languages. The student will also be able to deploy efficient and methodical techniques for integrating semantic analysis into the afore-mentioned recognizers, and generate low-level code for most constructs that characterise imperative and functional programming languages.

Timetabled teaching activities

"Term 1, 30 one-hour lectures "

Departmental link

http://www2.warwick.ac.uk/fac/sci/dcs/teaching/modules/cs325

Other essential notes

Prerequisites: CS126, CS245, CS246.

Module assessment

Assessment group Assessment name Percentage
15 CATS (Module code: CS325-15)
D (Assessed/examined work) Unsupervised practical assignments 30%
  2 hour examination (Summer) 70%

Module availability

This module is available on the following courses:

Core

N/A

Optional Core

N/A

Optional
  • Undergraduate Mathematics (BSc) (G100) - Year 3
  • Undergraduate Mathematics with Intercalated Year (G101) - Year 4
  • Undergraduate Mathematics (MMath) (G103) - Year 3
  • Undergraduate Mathematics (MMath) (G103) - Year 4
  • Undergraduate Master of Mathematics (with Intercalated Year) (G105) - Year 3
  • Undergraduate Master of Mathematics (with Intercalated Year) (G105) - Year 4
  • Undergraduate Master of Mathematics (with Intercalated Year) (G105) - Year 5
  • Undergraduate Mathematics (MMath) with Study in Europe (G106) - Year 3
  • Undergraduate Mathematics (MMath) with Study in Europe (G106) - Year 4
  • Undergraduate Data Science (G302) - Year 3
  • Undergraduate Data Science (with Intercalated Year) (G303) - Year 4
  • Undergraduate Computer Systems Engineering (G406) - Year 3
  • Undergraduate Computer Systems Engineering (with Intercalated Year) (G407) - Year 4
  • Undergraduate Computer Systems Engineering (G408) - Year 3
  • Undergraduate Computer Systems Engineering (with Intercalated Year) (G409) - Year 4
  • Undergraduate Discrete Mathematics (G4G1) - Year 3
  • Undergraduate Discrete Mathematics with Intercalated Year (G4G2) - Year 4
  • Undergraduate Discrete Mathematics (G4G3) - Year 3
  • Undergraduate Computer Science (G500) - Year 3
  • Undergraduate Computer Science (with Intercalated Year) (G502) - Year 4
  • Undergraduate Computer Science MEng (G503) - Year 3
  • MEng Computer Science (with intercalated year) (G504) - Year 4