This course is an introduction to the construction of compilers, including lexical and syntactic analysis, code generation, and error detection. Students will implement a compiler front end for a programming language. Pre-requisites: CMPS 350 or permission of instructor