Warning: Half-baked shower-thought follows. High probability of ridiculousness.
Suppose you wanted to write an operating system on top of the BEAM in Elixir. How would you design it and what do you think would be the biggest challenges?
What kind of unique features could it enable?
Let’s call it BeamOS.
I imagine each application within the operating system running as supervised processes, with some unique possibilities of running across several machines in a cluster. Perhaps even some kind of peer-to-peer-ish networking features, where one could share one’s hardware with friends and family.
Maybe I could run my word processor on your hardware.
I suppose one of the biggest challenges of implementing an operating system in a language with immutable data would be running out of memory due to copying of data. Drivers, compute-heavy operations and GUI code would also need to be implemented as NIFs in C, I guess.
This is probably a silly idea, but I think it’s fun to think about.
Feel free to contribute to my fantasy, if you find it entertaining