Is that not what we're doing with distributed systems? A lot of the theory & practice of our field is how to elegantly cope with servers dying, data being corrupted, load limits of single machines, etc. We have a lot of constraints.
And there's no possible way not to have some leaky abstractions with this in front of us.
And there's no possible way not to have some leaky abstractions with this in front of us.