Good point. Think of it as hand-holding your peers instead of hand-holding the compiler. if(x==y) throw "friendly error" // avoids eternal loop ...
The compiler doesn't care if you get an eternal loop at runtime, and static types wont prevent it.
What prevents you from writing the exact same exceptional code in a static system? I'm not sure I understand your point.
If you make it a habit to write exceptions, it's more likely that you would. Some people think tests etc is only needed because the language is dynamic.