>>64
Yes, really. It's possible to leave this feature in the language from the programmer's point of view but optimize around it most of the time. For example, in a loop a variable's type may be likely not to change. In that instance you can inline the method, reducing the performance hit to a safety check to confirm that object's type (which may be as simple as inspecting your reference to the actual data -- no need to dereference a pointer and load it into memory). This can be applied in other situations as well, and I'm sure there are other techniques I'm forgetting/which haven't been invented yet.