BT

Diffuser les Connaissances et l'Innovation dans le Développement Logiciel d'Entreprise

Contribuez

Sujets

Sélectionner votre région

Accueil InfoQ Actualités Oracle lance le projet Valhalla pour Java

Oracle lance le projet Valhalla pour Java

Favoris

Oracle a annoncé le projet Valhalla pour Java. Il s'agit d'un projet expérimental d'OpenJDK pour développer de nouvelles fonctionnalités majeures pour Java, qui nécessite des changements à la fois dans la syntaxe du langage et au niveau de la JVM. Brian Goetz, le leader du projet Valhalla, souligne qu'il s'agit d'un projet expérimental à un stade précoce et que la communauté ne doit pas nécessairement s'attendre à ce que des technologies de Valhalla soient incorporées dans JDK9 (prévu pour 2016). Le projet est similaire dans l'esprit à d'autres projets OpenJDK tels que Project Lambda et DaVinci Machine (qui a conduit à l'instruction invokedynamic dans Java 7).

Une des premières fonctionnalités discutées pour Valhala est une refonte majeure des génériques Java. Les versions actuelles de Java autorisent seulement les génériques de type référence, et le compilateur Java supprime tous les détails sur le type lors de la compilation. Cette approche des génériques (connue sous le nom de type erasure) est une des fonctionnalités les plus critiquées du système de typage de Java.

Le projet Valhalla va explorer une nouvelle approche des types génériques et espère produire une nouvelle forme de génériques permettant aux développeurs d'utiliser les génériques sur des types primitifs. L'objectif est d'avoir des types comme List<int> valides en Java dans une future version du JDK. Cette fonctionnalité, appelée generic specialization, est déjà présente dans d'autres langages JVM et les développeurs Java la demandent depuis que les génériques sont embarquées avec le JDK 5.

Une autre grande fonctionnalité proposée par Valhalla concerne les types Value. Elles sont destinées à combiner certaines propriétés des objets Java et des types primitifs de telle manière à ce que les développeurs les considèrent comme un nouveau type de primitive définie par l'utilisateur. John Rose, Brian Goetz et Guy Steele ont publié une proposition initiale pour les types Value ici.

La phase de prototype de Valhalla va commencer prochainement. Les développeurs intéressés devraient s'inscrire sur la liste de diffusion valhalla-dev du site OpenJDK. L'annonce initiale de Brian Goetz est disponible ici.

Evaluer cet article

Pertinence
Style

Contenu Éducatif

BT