That's just bad usage of a language feature don't you think. I'm still trying to figure out whether to blame the language because of the way programmers use it.
Personally, I like the object + static typing + first class functions as it eliminates 90% of errors at compile time. If any error occurs at run time, am pretty sure it's logical. This is a huge plus. The only drawback - the ridiculous amount of type specific code you have to write for mundane changes/updates.