29.6.05

Are generics evil ?

Ken Arnold pergunta se a inclusão de tipos genéricos em Java não foi um engano. Na verdade, ele argumenta que tipos genéricos são um engano, seja em Java, C++ ou C#, por adicionarem pouca coisa à linguagem ao custo de muita complexidade.

Muitas coisas interessantes no artigo. O modelo de tipos genéricos em Java, baseado em apagamento, é bastante controverso. Mas foi uma forma de colocar genéricos na linguagem sem quebrar a compatibilidade. O artigo menciona dificuldades relacionadas à teoria dos tipos, como a definição recursiva das Enums. Também toca no ponto sensível das arrays polimórficas, coisa que tem a ver com covariância/contravariância em linguagens OO. Mas que programadores Java ouviram falar disso ?

O pessoal que gosta da teoria das linguagens de programação no Lambda the Ultimate (excelente blog, por sinal) está discutindo o assunto também.

Nenhum comentário: