Context : IdealOperatingSystem
In a couple of twitter conversations, I started brainstorming a kind of fantasy of a new Linux :
A discoverable ManPages and help system
If I could magically create a new Linux variant, I'd merge the man system with apropos into a more 'wiki-like' environment with hyperlinks, full text search, edits and annotations by users, and hyperlinks into / access to system config files.
Moving towards a LibraryOS
Also, from another tweet conversation on the difficulties for application writers to work on all Linux distros :
I wonder how you could change a free OS to fix this. Having been a Java hater all my life, ClojureLanguage converted me to the wonders of JAR files. And I'm now sold on that idea of big fat uberbinaries containing everything you need. Possibly even to the ideal of LibraryOSs, ie OperatingSystems that are mainly source to be compiled statically into applications.
I wonder if it's possible for someone to create a Linux fork around the ideal of no dynamic libraries at all. Minimal dependencies. And a smaller footprint API between apps and kernel.
FreezeForLibraries could be a way of evolving towards a Library OS
RustLanguage seems to have a lot of good ideas. But it seems to me we could improve C by adding new compiler options.
For example, compiler options to enforce, say, immutability in a particular module. Or eliminate nulls, or dynamic memory allocation. Or to do some of the things that C++ is doing with MoveSemantics
We have a huge amount of existing C code invested in Unix, GnuLinux. Having these compiler options would let us improve this gradually rather than requiring people to rewrite the whole thing from scratch in a better language.
(Contrast : ThePerfectRewrite)
Specialist DSLs for writing kernels
Why not have specialist LittleLanguages for writing certain bits of the kernel. Or modules for the kernel etc.