An LC-3 Disassembler in Haskell
Summary
A detailed technical write-up about building an LC-3 disassembler in Haskell, covering data structures, instruction decoding, multi-pass disassembly, fixed-point cleanup, postprocessing, and pretty-printing. The article also discusses heuristic data vs. code separation, speculative analysis, and label insertion to produce readable LC-3 assembly.