Description
This course introduces the fundamental principles and practices for the design and implementation of compilers and interpreters. Core topics covered include: preprocessors, assemblers and linkers; scanning theory and practices; grammar and parsing; symbol tables; run-time environment and storage organization; lexical, syntax and semantic analysis; syntax directed translation and type checking; code generation and optimization; constructing prototype compiler modules for a hypothetical language.