Destiné à permettre l'utilisation de JavaScript comme langage d'extension pour les applications Java, le projet Detroit s'est essoufflé après avoir perdu son sponsor en 2018. Mais selon une proposition datée du 25 février, l'intérêt pour l'intégration des deux langages est toujours présent. Cette demande a gagné en popularité à travers une liste de diffusion OpenJDK.

Sundararajan Athijegannathan, spécialiste Java chez Oracle, participe à cette proposition et se déclare candidat à la direction du projet. Pour lui, outre l’extension de JavaScript aux applications Java, les bibliothèques Java seront aussi accessibles depuis les applications JavaScript. Pour cela, les développeurs du projet ont réalisé un prototype consistant à concevoir une implémentation native du package javax.script basée sur le moteur JavaScript V8 de Chrome.

Un moteur Python en test

Dans le document, Sundararajan Athijegannathan souligne également un autre intérêt pour le projet « l’accès aux fonctionnalités IA écrites en Python depuis les applications Java ». Dans ce cadre, les participants du projet Detroit relancé ont prototypé un moteur de script Python basé sur CPython. L'utilisation d'implémentations JavaScript et Python largement répandues, plutôt que de repartir de zéro. Par ailleurs, elle garantit de faibles coûts de maintenance à long terme et la compatibilité avec le code JavaScript et Python existant, souligne le spécialiste.

« Nous souhaitons intégrer ces prototypes à un véritable projet OpenJDK afin d'accélérer le développement. Nous prévoyons d'exploiter et de repousser les limites de l'API FFM (Foreign Function & Memory), ce travail aura donc probablement une influence sur le projet Panama », a-t-il écrit. Panama vise à améliorer les connexions entre la JVM et les API non-Java. À terme, le projet pourrait envisager d'implémenter des moteurs de script pour d'autres langages. Les votes sur le projet, réservés aux membres actuels d'OpenJDK, sont attendus avant le 11 mars.