CSC 4243 - Compiler Construction

3 lecture hours 0 lab hours 3 credits
Course Description
This course provides an overview of the design and implementation of a compiler, including lexical analysis, parsing, grammars, semantic analysis, code generation, and optimization. The course will focus more on the application of parsing than the theory. This course will give insight into how high-level language constructs are turned into optimized, executable machine code.
Prereq: CSC 2210  or CPE 2600  (quarter system prereq: CS 2040 or CS 3210)
Note: None
This course meets the following Raider Core CLO Requirement: None
Course Learning Outcomes
Upon successful completion of this course, the student will be able to:
  • Implement a recursive-descent parser
  • Use tools to create a lexical analyzer
  • Build a table-driven parser
  • Implement symbol tables
  • Generate intermediate representation trees
  • Generate code

Prerequisites by Topic
  • Understanding the link between high level languages like C & C++ and assembly programming
  • Implementing high level constructs through assembly programming
  • Inline functions [a topic in C & C++]
  • OO Java programming
  • Understanding the implementation and use of stacks, queues, hash tables, binary search trees
  • Big-O analysis

Course Topics
  • Lexical analysis
  • Parsing
  • Code generation
  • Issues for modern programming languages
  • Optimization

Coordinator
Dr. Robert Hasker


Print-Friendly Page (opens a new window)