You don't use a static language because you want the exceptions, but the type checking can still statically validate most of your code.