Hejlsberg: Oh, certainly. If I give you a List typed as object, I can ask it, "What are you?" And it will say, "I am a list of customers." It'll say, "I'm a List, where T is Customer." Then I can say, "Well, why don't you give me just the System.Type for List? And in fact, why don't you bind T to Order?" And now I can make myself a List, and then I can create instances on that. Anything I can do at compile time, I can do at runtime too, through reflection, and that's tremendously powerful.

とは言いながら、このギャップを埋めるべく新しい分野のJavaソリューションを準備しています。近日お披露目。意味合いはちょっと違うんですが、Anything I can do at compile time, I 'll not do at runtime.