"Pascal" in this context seems to be "static typing with bounds checking" along with a handful of superficial syntactic similarities (but far more differences). You could substitute "Pascal" with a substantial subset of Algol-like languages and the comparison would make just as much (or little) sense.
As about bounds checking, unfortunately, there aren't many languages with dependent typing. (And Nimrod lacks them too.)
I mean, it's frustrating when a program suddenly fails at runtime. Especially when it can be proved at compile time that values won't (actually, can't) get out of bounds.