CSC416 Design and Construction of Compilers
3 Credit Hours
Instructor: Dr. Richard Burns, Assistant Professor of Computer Science
Modern Compiler Implementation in Java, 2nd edition, Appel, Cambridge University Press, 2002.Other Supplemental Materials
“Assemblers, Linkers, and the SPIM Simulator”, in Computer Organization and Design (Appendix A), Hennessy and Patterson, Morgan Kaufmann, 2013.
Design and construction of compilers including lexical analysis, parsing techniques such as LL(1), LR and LALR(1), code generation techniques. Error analysis and simple code optimizations will be introduced. Students will implement a large scale project consisting of developing a lexical analyzer, parser, abstract syntax tree, symbol table, intermediate and assembly code.
Prerequisite: CSC220 Foundations of Computer Science, CSC241 Data Structures and Algorithms, CSC242 Computer Organization.
Selected elective (student must take one of: CSC417, CSC416, CSC496).
Course addresses Student Outcomes (a), (i), (j), and (k).