I think the target environment makes a big difference. Quick iterations, hacks and experiments are nice when creating a web app or an application prototype which can be refined iteratively. However, if you program a spaceship or nuclear missile, you have to get it correct the first time, and the program have to work correctly under any concievable input. I think this calls for different approaches and different languages.
I actually think the bounds checking etc of Ada is good. If you put that in a very C like language it would have been better accepted. Instead it had a bunch of readability 'improvements' that turned programmers off.