>>10I repeat specifically for you: retarded errors matter because they constitute the majority of errors. They take away programmer brainpower, they blow up unexpectedly during runtime, they are a hassle in any large project (though I doubt you've ever dealt with one). By providing a fast and sure way to deal with these retarded errors, static typing frees the programmer and lets him spend more time thinking about the actual logic and design. If the programmer is a dumbass and a layman - well, the type system can't help that. But that's not really a big deal. Being in a mire of type-blindness like in dynamic crap is much, much worse.