#582 overall
15-411 Compiler Design
Carnegie Mellon University
1 recommender · 1 thread · recommended in 1 year, 2014 · score 1.0
A Carnegie Mellon compilers course in which students build a working compiler for a subset of the C0 language, starting with lexing, parsing, and code generation in the first lab and adding language features in each later lab.
Commenters say the build-a-whole-compiler-early approach gives the full picture within the first weeks, and that everyone they knew who finished it highly recommended it.
Recommendations by year
20062026
The way compilers works at CMU is by the end of the first lab you have a fully functional compiler lexing/parsing -> code generation for a subset of the C0 language. With each subsequent lab, you implement more and more features of the language. http://www.cs.cmu.edu/~fp/courses/15411-f13/assignments.html
This is definitely closer to what is described in this post than most compilers courses, but not entirely the same.
I agree with the post in that the current common method of starting with _just_ parsing/lexing is wrong. It's a shame that the first part of the compiler you write in these courses is, in my opinion, the most boring and least relevant to compiler theory. CMU's method of giving you the whole, although fuzzy, picture within the first two weeks wasn't viewed as wrong by me, my lab partner, or anyone else I knew who took the compilers course. In fact, everyone I knew who successfully completed the course highly recommended it to everyone they knew. This is a pretty good measure of success for a course.