|
|
|
|
|
by olewhalehunter
3239 days ago
|
|
The symbiotic relationship between compiler development and hardware architecture design has a defining role in CS problems, and while you don't need to understand that relationship to write CRUD apps for a living, I think ignorance of it robs those who really want to understand this stuff of truths both technical and profound. |
|
Compiler development = Finite State Automaton + Push Down Automaton + Context Free Grammar + Intermediate representation + Static Analysis/Optimiation + Stack Machine + ...
Hardware Architecture = Stack Machine/Turing Machine + electricity + creativity
Stack Machine == Turing Machine
Compiler development starts and ends with Turing Machines.
Hardware architecture ends with Turing Machines operating at the speed of electricity through metal.