How would you describe the architecture of real-world compilers? https://mrale.ph/blog/2015/03/29/browser-as-an-interactive-disassembler.html sums it up as a structure that should be treated as a black box until you know your way around!