I'm a compiler engineer working on NPU compiler infrastructure — MLIR-based pipelines that take neural network graphs from ONNX down to silicon.
I write about compilers, systems, and hardware at the boundary where software meets physics. Mostly to understand things deeply. If it helps you too, that's a bonus.
series/
- emacs-internal/Emacs Internal · 4 parts · reached the Hacker News front pagestart at 01 · latest 04
- refactor-with-ai/Refactoring with AI · 2 partsstart at 01 · latest 02
- pixels-to-tensors/From Pixels to Tensors · 4 partsstart at 01 · latest 04
all writing/
2026
- Pinning Both Ends: Letting AI Rewrite 15k Lines of Test Toolingrefactor-with-ai/02
- Deleting 19k Lines of Dead Compiler Code Without Trusting the LLMrefactor-with-ai/01
- Who Keeps the Time? Perth Observatory, and a Lawn on Gongyuan Roadmurmur
- Agent State in the Tmux Status Line
- From Pixels to Tensors, Part 4: McCulloch–Pittspixels-to-tensors/04
- Catching NaN at the MLIR Pass Boundary
- Trip to Perthmurmur
- Emacs Setup for LLVM and MLIR Compiler Work
- Work as Play; 4 weeks onboarding.murmur
- From Pixels to Tensors, Part 3: Symbolic AIpixels-to-tensors/03
- Machine Learning is Just Data Flowing Through Operatorsmurmur
- From Pixels to Tensors, Part 2: The 3D Graphics Pipelinepixels-to-tensors/02
- From Pixels to Tensors, Part 1: 2D Rendering Baselinespixels-to-tensors/01
- Migrating a Zola blog from Markdown to Org-mode — with a lint/export/check pipeline to keep them in sync
- What "Memory Compiler" Actually Means: From Bitcells to GDS Tiling
- TIL: Reading Gmail in Emacs with mu4e on macOS
- Emacs Internal #04: Interval Trees — Balancing by Text Length, Not Node Countemacs-internal/04
- Plane Spotting, Non-Euclidean Geometry, and Cultural Runtimesmurmur
- Emacs Internal #03: Tagged Union, Tagged Pointer, and Poor Man's Inheritanceemacs-internal/03
- Emacs Internal #02: Data First — Deconstructing Lisp_Object in Cemacs-internal/02
- Emacs Internal #01: is a Lisp Runtime in C, Not an Editoremacs-internal/01
- Wishful Thinking from SICP, Practically
- Stratum: Architecting a Configurable Cache Simulator with C++ and Racket