Runtime type checking is useless. If a given function can't accept the data I plan to send into it, I want the compiler to tell me immediately.
My own related exaggeration is that type declarations without performance gains are useless. Get them out of my dynamic langs unless you can deliver the performance goods. (Like Common Lisp can. It can also tell you you're stupid locally trying to make an invalid call, at compile time, since COMPILE is built-in.)