Interpreters,
assemblers, and compilers. Grammar, languages, syntax, semantics, and BNF. Parsing and symbol tables.
One and two pass assemblers. Design of interpreters and compilers. Large programming project.
Example Triangle programs are under Documents button. See the .tri files.