In reply to @indelusionalizationary "why zig and not": I think in the end it's up to you, and most of this will be speculation, but: 1. `zig` offers a more "manual" approach to memory management while still offering good primitives to do so. This is particularly desirable when building your kernel. 2. `nim` abstracts a lot, while `zig` abstracts as less as possible, this is not necessarily bad, but when building an OS a lot of the time you want to know exactly what's happening behind the curtains. 3. in OSDev you'll find yourself dealing with pointers a lot, I think `zig`'s "star syntax ``" is closer to C and is a bit more natural. In `nim` you can of course have pointers, but they feel "second class". That's ok, but maybe your code will look cleaner with a just ``'s. It's not really impossible nor bad to build something on either, but for me, I'd choose `zig`.