*You* do the above because you know that you should; (hopefully you do
other checks as well). One of the things that we are doing is trying to help the
naive/lazy programmer who doesn't bother - or thinks that javascript checking is enough :-(
What we want to do is to generate an error/warning message that can tell him
that something is wrong.
Bad programmers write bad code and will continue to do so irrespective of type hinting. Better documentation is the answer to that problem, not magic casting, IMHO.