4 ms·
CMU's compiler's course teaches neither "forward" nor "backward". It teaches in increasing complexity. You start by writing the whole pipeline for straight li
by ajfapoiawejf 6y ago
CMU's compiler's course teaches neither "forward" nor "backward".
It teaches in increasing complexity.
You start by writing the whole pipeline for straight line code. Then you add branches, and structs, and functions, in succession.
This bypasses the whole "which direction?" debate.
https://www.cs.cmu.edu/afs/cs/academic/class/15411-f20/www/assignments.html https://www.cs.cmu.edu/afs/cs/academic/class/15411-f20/www/a...
- lifthrasiir 6y agoYes, very much yes! Compiler pipeline is highly decomposable and can be taught in pretty much any order. Which one to teach first is really the matter of importance (like, I learned physics by starting with dynamics and as a result I have a good understanding of dynamics but not much for subsequent topics like thermodynamics, optics or electomagnetism...). I do agree the importance of parsing is currently overstated, but its solution has to be topic-agnostic as you can't build compilers only with parsing or codegen.