I agree with some points as well. In fact, the OP argues that sufficient engineering attention can solve the problem, but I think that's only theoretical in reality, it's difficult. It's like C programmers claiming that undefined behavior is manageable.
The "Don't make mistakes" thing isn't even just Programmming, that's why I consider it unforgivable. Railway interlocking starts in the Nineteenth Century. It's a fully mechanical system, if you see an old "Signal box" somewhere, that cabin with a human pulling levers isn't up there just because it's a better vantage point (though that doesn't hurt) it's because there are physically steel cogs and gears meshed together to allow the machine they're operating to only enter safe states. If you make mistakes in that signal box just moving the levers and so on nothing terrible happens. Worst case you annoy people and that's forgiveable.
https://www.youtube.com/watch?v=omYfLDlt-MA
Like Avon says in The Wire, "And how you ain't never gonna be slow? Never be late?". Systems which require that you don't make mistakes will fail.