O que são genéricos Reified? Como eles resolvem os problemas de apagamento de tipo e por que não podem ser adicionados sem grandes alterações?

Eu liNeal Gafter's blog sobre o assunto e ainda não estou claro sobre vários ponto

Por que não é possível criar implementações da API de coleções que preservam as informações de tipo, considerando o estado atual de Java, a JVM e a API de coleções existentes? Eles não poderiam substituir as implementações existentes em uma versão futura do Java de uma maneira que a compatibilidade com versões anteriores seja preservada?

Como um exemplo

List<T> list = REIList<T>(T.Class);

Where REIList é algo como isto:

public REIList<T>() implements List {
  private Object o;
  private Class klass;

  public REIList(Object o) {
    this.o = o;
    klass = o.getClass();
  }
... the rest of the list implementation ...

E os métodos usam o Objeto e a Classe de classe para obter as informações de tip

Por que a preservação de informações genéricas de classe exigiria alterações de idioma, em vez de apenas uma alteração na implementação da JV

O que eu não estou entendendo?

questionAnswers(4)

yourAnswerToTheQuestion