Comment by blueflow
2 years ago
> OpenBSD treating libc as the interface with the kernel instead of syscalls being the interface with the kernel
Which is a reasonable thing, given that the libc interface is defined by a widely used IEEE standard while the kernel interface is not.
libC is an extremely leaky abstraction. Programming to it assumes you have a runtime that supports constructor functions, POSIX errno and locale, a global heap allocator singleton, and more. The design space of _Hello World_ is massively constrained by libC.