Zig is supposed to be an improvement upon C, so doing C things with it seems reasonable.
Kind of neat that there's no need for a separate assembly file although there is inline assembly. Might get better (or worse) syntax support for separate assembly files? But it doesn't make a big difference until there's more features that need it (interrupts, threads/processes and maintaining their stacks, syscalls, starting other processors, etc)
But also, I can see some amount of weird hooray optimism in this project, like: totally confusing claim that the thing is bare metal when it's still being run under an emulator; also, calling it a kernel is a huge overstatement
The same should be true for any compiled language sitting on top of LLVM btw, not just C vs Zig.
The rest, you can google yourself, but in short, sorry to tell you that it is sometimes faster. Often, sometimes, some portion of the time.
(disclaimer: not sure if that's actually still the case, last I checked in detail was probably 2 years ago).
Also Zig always builds the entire project as a single compilation unit, which allows more optimization options because the compiler sees all function bodies. The closest equivalent in the C world is LTO, but this is usually also not enabled by default.
.
drnick1 says why "Zig" not C? [I took the quotation marks as dismissive of Zig, but I could be misreading that]
6r17 says why do it in C?
lelanthran says the language is mostly irrelevant, it's a fun experiment.
6r17 blows off the handle and starts calling people toxic and being really unpleasant.
Nothing in this comment chain seems to justify even 1/10th of the vitriol espoused.