Buscar
Social
Ofertas laborales ES
« Jrake, herramienta de build para Java construida sobre JRuby | Main | Liberado Java EE 5 Update 2 (y corre sobre Java 6) »
lunes
dic182006

Reflexión sobre por qué no se deberían incluir closures en Java

Mikael Greg ha publicado un post (que es casi un mini-artículo) en Javalobby sobre por qué él considera que no se debería incluir los closures en Java 7. Su argumento se apoya en dos pilares. Por un lado, que prácticamente todo lo que se puede hacer con closures se puede hacer con clases anónimas (lo único que no se puede hacer es acceder a las variables del ámbito de la closure) con la única "desventaja" de teclear un poco más de código.


Sin embargo, los modernos editores que tenemos para Java pueden generar la mayor parte del código necesario de la clase anónima. Además, lo que sí se podría hacer que es mejorar y simplificar la sintaxis para definir clases anónimas. Por otro lado, la sintaxis de las closures tampoco es tan elegante cuando éstas pueden lanzar excepciones.


El otro pilar de su argumento es que los beneficios que traería la inclusión de las closures (beneficios que Mikael no niega) se verían eclipsados por la complejidad e inconsistencia que traerían al lenguaje. Complejidad porque es un nuevo concepto a comprender e iría en contra del objetivo de Sun de alcanzar los 10 millones de programadores Java (lo que implica que el lenguaje debe ser sencillo). Inconsistencia porque ya tenemos una gran cantidad de librerías (en especial framework de colecciones) que se habrían diseñado de un modo completamente diferente si el lenguaje contase con este tipo de construcciones.


¿Qué os parecen sus argumentos? ¿Estáis a favor de las closures para Java 7 o en contra?

Reader Comments

There are no comments for this journal entry. To create a new comment, use the form below.
Comentarios deshabilitados
Comentarios deshabilitados en esta noticia.