Compilers

Building a Debugger • Sy Brand & Tim Misiak

Building a Debugger • Sy Brand & Tim Misiak

Sy Brand, author of "Building a Debugger," and Tim Misiak explore how implementing a debugger is one of the most effective ways to gain a deep understanding of operating systems, compilers, and hardware. They delve into the unexpected complexities of core features like stack unwinding and code stepping, the challenges posed by legacy APIs like ptrace and debug formats like DWARF, and the future of debugging with advancements in time travel debugging and tools for optimized code.

Combinators Revisited • Edward Kmett • YOW! 2018

Combinators Revisited • Edward Kmett • YOW! 2018

Edward Kmett revisits the historical approach of compiling lambda calculus to a fixed set of combinators, arguing for its renewed relevance. He contrasts it with modern super-combinator techniques (like GHC's G-machine), highlighting the latter's vulnerability to Spectre attacks. Kmett proposes that a combinator-based evaluation model, combined with SPMD on SIMD execution, offers a secure, highly-parallel alternative that could rival the performance of current systems while providing a unified foundation for advanced compiler features.