← Back to context

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.