Course description
This course is a study of the theory and practice required for the design and implementation of interpreters and compilers for programming languages. Coursework ranges from the abstract, such as categorization of grammars and languages, to the concrete, such as specific algorithms used in compilers and practical performance issues. Topics include lexical analysis, parsing, symbol table generation, type checking, error detection, code generation, optimization, and run-time support. Techniques for top-down and bottom-up parsing both with and without the use of automated tools are studied. Local and global optimization are covered. An extensive programming project is required of all students.
Enroll now.
Learn MoreYou may also like
- OnlineAn introduction to the intellectual enterprises of computer science and the art of programming.Free*11 weeks longAvailable now
- OnlineThis course is a variant of Harvard University's introduction to computer science, CS50, designed especially for lawyers (and law...Free*10 weeks longAvailable now
- OnlineLearn to use machine learning in Python in this introductory course on artificial intelligence.Free*7 weeks longAvailable now