Why I'm Building a Database Engine in C#

The contrarian move
When someone says they're building an ACID database engine in C#, the room tilts. "But what about GC pauses?" is the reflexive response — and it’s a fair one. The author, a veteran of three decades building real-time 3D engines and systems software, lays out that skepticism up front and treats it not as a strawman but as the central problem to solve. It makes for a dramatic opening: can a managed language meaningfully live in the microsecond-latency world traditionally dominated by C, C++ and Rust? Short answer: he thinks so. Longer answer: he’s built a plan and a prototype called Typhon.
The toolbox: C# beyond the comfy defaults
Modern C# is not the LINQ-and-classes toy some remember. The blog argues — and allegedly demonstrates — that unsafe code yields the same low-level instructions you’d get from C; that pinned memory makes the GC irrelevant where it matters; that ref struct and constrained generics let you write zero-allocation, monomorphized hot paths; and that hardware intrinsics deliver the SIMD and CRC instructions you expect. It reads like a checklist for closing the language gap: stackalloc for stack buffers, GCHandle.Alloc(Pinned) for immovable page caches, StructLayout(Explicit) for precise data layout. Skeptics will point out warmup and edge cases; the author doesn’t pretend those disappear, but he insists they’re solvable with engineering, not miracles.
What Typhon promises — and why you should care
It has been reported that Typhon is an embedded, persistent ACID engine aimed at game servers and real-time simulations, speaking the native language of entities, components and systems, and targeting 1–2 microsecond transaction commits with MVCC snapshot isolation, cache-line-aware storage, and zero-copy access. If those performance claims hold up in independent benchmarks, this is a small renaissance for .NET systems work — and a reminder that language choice is as much about ecosystems, ergonomics and engineering trade-offs as it is about raw syntax. Will the latency skeptics be silenced? Maybe. Or maybe this will be the start of a conversation about what “low‑level” really means in 2026. Either way, it’s worth watching.
Sources: nockawa.github.io, Hacker News
Comments