The C ABI won't die because it has a stranglehold on *NIX. Every new language you make has to conform in some way to C in order to use syscalls.
I'm asking since I want to get into (hobbyist) OS development at some point and would love to know if there's a better way to do syscalls.