
edXBuilding a compiler teaches you how languages come to life. This course uses short, focused videos and hands-on problem sets to guide you from concept to code. An optional project challenges you to write a complete compiler for COOL, a small but realistic language. You'll implement type checking, parsing, and code generation—the same techniques that power production systems. C++ or Java, your choice.
The course lectures will be presented in short videos. To help you master the material, there will be in-lecture questions to answer, quizzes, and two exams: a midterm and a final. There will also be homework in the form of exercises that ask you to show a sequence of logical steps needed to derive a specific result, such as the sequence of steps a type checker would perform to type check a piece of code, or the sequence of steps a parser would perform to parse an input string. This checking technology is the result of ongoing research at Stanford into developing innovative tools for education, and we're excited to be the first course ever to make it available to students.
An optional course project is to write a complete compiler for COOL, the Classroom Object Oriented Language. COOL has the essential features of a realistic programming language, but is small and simple enough that it can be implemented in a few thousand lines of code. Students who choose to do the project can implement it in either C++ or Java.
I hope you enjoy the course!
Price
No active coupon right now
View Course →Advertisement
No coupon right now. We'll tell you when there is one.
More in Software Engineering




Tracking since 1 Aug— not enough history yet to tell you whether today's price is any good. Watch the course and we'll tell you when it drops.
This is what we recorded in US pricing — not every price this course has ever had, and prices differ by country.