&gt; What poor choices are revealed by writing a debugger in particular?<p>Well, for one, you can&#x27;t just transpile to ANSI C, compile, and end up with sensible debug symbols in your binary. You&#x27;ll end up with debug symbols for the C code, not the original language. So you end up writing in one language and debugging in another. This is one reason most new languages target LLVM.