Compilers & Runtimes
Compilers, JITs, GC — why code runs fast
01
·Compilers & Runtimes·FREE·11 min read
Compilers From Scratch — How Source Becomes Machine Code
One line of source code, followed all the way down through lexing, parsing, semantic analysis, intermediate representation, optimization, and code generation, until it comes out as a single machine instruction. Along the way: why bugs surface at -O2, and why your benchmark loop disappears.
02
·Compilers & Runtimes·★ MEMBER·10 min read
JIT and GC — Getting Faster While Running, Cleaning Up While Running
A just-in-time compiler and a garbage collector are both services that have to work without stopping the application. Hot spot detection, tiered compilation, inlining, speculation and deoptimization, generational GC, tri-color marking and write barriers — built up from zero, ending where you can read a GC log and a JIT log yourself.
03
·Compilers & Runtimes·★ MEMBER·11 min read
Why Python Is Slow — Said Precisely
Saying Python is slow bundles three unrelated complaints: the cost of a single operation, the way data is laid out in memory, and the fact that CPU work does not spread across threads. Objects and the eval loop, the real reason NumPy is fast, what the GIL actually protects, and how far free-threaded builds since PEP 703 get you — from zero assumed knowledge.