La langue de Ceylan de Red Hat est une tempête inutile dans une théière

Red Hat ne peut pas être sérieux. Le principal fournisseur de Linux ne peut pas vraiment prévoir de développer un tout nouveau langage de programmation et SDK pour rivaliser avec Java - n'est-ce pas?

Apparemment, c'est possible, même s'il semble que Red Hat ne voulait pas vraiment que vous le sachiez encore. Au lieu du communiqué de presse habituel, l'annonce de Red Hat a pris la forme d'une paire de présentations par l'ingénieur Red Hat et collègue de JBoss Gavin King, prononcées lors de la conférence sur les logiciels d'entreprise QCon la semaine dernière à Pékin. Cependant, les jeux de diapositives de King sont rapidement devenus viraux sur le Web, laissant la communauté plus large du développement de logiciels à la fois intriguée et perplexe.

Paul Krill de [explique pourquoi Ceylan n'est pas un tueur de Java. | Consultez les sélections des 5 meilleurs langages de script JVM. | Tenez-vous au courant des dernières techniques Java avec la newsletter JavaWorld Enterprise Java. ]

Intrigué, car King n'est pas un mannequin. En tant que créateur du framework de persistance Hibernate Java, il connaît Java de fond en comble. Donc, s'il dit qu'il y a des problèmes fondamentaux avec Java qui le rendent inadapté au développement de logiciels modernes, les gens ont tendance à écouter.

Perplexe, à cause de tout ce à quoi Red Hat pourrait consacrer son temps, son énergie et son argent, réinventer la roue - en particulier une roue aussi grande et complexe que Java - semble être la moins utile, sans parler des moins susceptibles de réussir. Que diable pense Red Hat?

Ceylan: Java redux

Les médias n'ont pas tardé à sauter sur l'idée que Red Hat préparait un «tueur de Java», ce que King n'a pas tardé à nier. Pourtant, le nom de la langue, Ceylan, est en lui-même un cadeau. Java et Ceylan sont deux îles, mais alors que Java est bien connue pour son café, Ceylan (aujourd'hui Sri Lanka) est célèbre pour son thé - voyez -vous?

Cela ne veut pas dire que le langage de programmation Ceylan diverge complètement de Java. Au contraire, il repose sur l'environnement d'exécution Java. Ceylon compile en bytecode Java, qui peut ensuite être exécuté par la JVM de votre choix.

Là où les langues diffèrent, c'est en grande partie en matière de syntaxe. Bien qu'il ait été de toute évidence un fan, King pense que Java n'a pas réussi à suivre le rythme des développements introduits par des langages de programmation plus modernes, tels que C #. Il pense qu'il est grand temps que quelqu'un donne une fois de plus au langage Java, en éliminant les problèmes et en corrigeant les défaillances de longue date, telles que la prise en charge des fonctions de haut niveau et l'amélioration de la gestion des types. Il a fait cela, et il appelle le résultat Ceylan.

Mais le projet Ceylon vise à faire plus que simplement réorganiser la grammaire de Java. «Une grande partie de notre frustration ne vient même pas du langage Java lui-même», écrit King. «Les bibliothèques de classes extrêmement obsolètes qui forment le SDK Java SE sont criblées de problèmes. Développer un excellent SDK est une priorité absolue du projet.»

Vous avez bien entendu: le projet Ceylon produira non seulement un nouveau langage, mais un nouvel ensemble de bibliothèques de classes écrites dans et pour ce langage. Il n'y aura pas d'incohérences ici, pas de retour à la syntaxe Java lorsque vous devez utiliser un élément de la bibliothèque standard. Les programmes Ceylan fonctionneront sur la JVM, mais ils seront écrits en utilisant 100% Ceylon.

Quelqu'un a-t-il commandé un nouveau langage de programmation?