I’m just guessing, but what about backwards compatibility? Or cross-system compatibility?
For example, something like a syscall that’s existed for 20 years. Changing it would break old apps.
Of course you could just keep the now “old” syscall and add new methods that replicate it’s behavior, but haven’t you then introduced bloat? More ways to do the same thing, meaning (eventually) more bugs, more fragmentation, memory usage, etc.
Yeah, but people don’t like change, and I’d expect low level engineers to like it even less.
And looking at Linux, that shit still supports ancient hardware, being able to actually get rid of old code (that now has to be maintained alongside the new code) is gonna be a PITA.