Learn the important principles and practices of programming language implementation in this introductory course to compilers. Topics covered include semantic analysis, intermediate representations and runtime environments. The four class programming projects comprise a series of milestones that will ultimately lead to an operational compiler for a miniature object-oriented programming language.


CS103 and CS107

Students should have a good understanding of undergraduate computer science theory, particularly basic logic

Topics include

  • Lexical analysis
  • Parsing theory
  • Semantic analysis and type checking
  • Code generation
  • Local and global optimization
  • Garbage collection and language security

Course Availability

The course schedule is displayed for planning purposes – courses can be modified, changed, or cancelled. Course availability will be considered finalized on the first day of open enrollment. For quarterly enrollment dates, please refer to our graduate education section.

Thank you for your interest. No sections are available. Please click the button below to receive an email when the course becomes available again.

Notify Me