The fact that you could go back do DOS isn't relevant to the definition of what is an operating system and what isn't. You could go back to DOS in Win9x, too. And you can shut down the OS and go back to the boot loader shell in many computer architectures, including the earlier models of IBM PC where you could go back to ROM BASIC.
Also consider the following example. What does this do?
c = a * b;
Is it a vector product? Is it a scalar product? Is it a scalar multiplication? I need to look at the types of a, b and c to figure out. A method name in place of a single character could tell me more.
Type erasure, on the other hand, is pure evil - to me, it's the representation of what happens when a pragmatic language ends up into the hands of computer scientists.
By the way, in Java all lists have the get() method with no exceptions (this includes Lists, HashMaps, Vectors) and all collections have the iterator() method with no exceptions. The At() method doesn't exist.
Besides, what if I’m using TLS? Are they going to require me to install rogue certificates just to make their inspection more comfortable? No thanks. Telecom companies had better learn already that with the advent of the Internet, their trade is to sell dumb pipes, competing with the others over the price of that service; the good times when they could milk their customers for “value added services” is over.