This article I read yesterday has one interesting take on what an OS designed on modern programming principles could look like. It has a loose treatment of technical FP terms, but the insights behind it are at least thought-provoking.
I believe we're in for a redesign of OS architectures, now that the 50's assumption of a single machine with a single OS kernel running all programs (or the 60's equivalent of several few mainframes communicating through a slow network) is no longer the main paradigm.
The article reminds me of what Erlang is meant to do. With pure message passing wouldn't the need for some foo() calling some bar() be down to shooting off a message?
https://medium.com/@reinman/monoids-to-groupoids-492c3510511...
I believe we're in for a redesign of OS architectures, now that the 50's assumption of a single machine with a single OS kernel running all programs (or the 60's equivalent of several few mainframes communicating through a slow network) is no longer the main paradigm.