Paul Krill
Editor at Large

Abandoned project linking Java, JavaScript makes a comeback

news
Feb 25, 20262 mins

The Detroit project envisioned using JavaScript as an extension language for Java applications. Now it’s being revived with the addition of Python.

A hand draws football plays on a clear screen in black marker.
Credit: Ivelin Radkov / Shutterstock

Once envisioned as a bridge between Java and JavaScript, the Detroit project never got off the ground. Now, there are efforts at reviving it, adding a Python engine to the mix.

Intended to enable using JavaScript as an extension language for Java applications, the Detroit project fizzled out after losing its sponsoring group around 2018. But according to a new proposal dated February 25, there still is interest in bringing Java and JavaScript together. The proposal was gathering steam on an OpenJDK mailing list this week.

List participant Sundararajan Athijegannathan, who has offered to lead the project, wrote that “there is also interest in accessing AI functionality written in Python from Java applications.” In addition to extending JavaScript to Java applications, Java libraries would be accessed from JavaScript applications, according to Athijegannathan.

The Detroit project prototype, which involved developing a native implementation of the javax.script package based on the Chrome V8 JavaScript engine, has been revived, Athijegannathan said. Participants also have prototyped a Python script engine based on CPython. Using widely adopted JavaScript and Python implementations, rather than re-implementing the languages from scratch, ensures low long-term maintenance costs and compatibility with existing JavaScript and Python code, Athijegannathan wrote.

“We would like to move these prototypes into a proper OpenJDK project in order to accelerate development. We expect to leverage and push the boundaries of the FFM (Foreign Function & Memory) API, so this work will likely influence Project Panama,” he wrote. Panama looks to improve connections between the JVM and non-Java APIs. Over time, the project may consider implementing script engines for additional languages. Votes on the project, from current OpenJDK members only, are due by March 11.

Paul Krill

Paul Krill is editor at large at InfoWorld. Paul has been covering computer technology as a news and feature reporter for more than 35 years, including 30 years at InfoWorld. He has specialized in coverage of software development tools and technologies since the 1990s, and he continues to lead InfoWorld’s news coverage of software development platforms including Java and .NET and programming languages including JavaScript, TypeScript, PHP, Python, Ruby, Rust, and Go. Long trusted as a reporter who prioritizes accuracy, integrity, and the best interests of readers, Paul is sought out by technology companies and industry organizations who want to reach InfoWorld’s audience of software developers and other information technology professionals. Paul has won a “Best Technology News Coverage” award from IDG.

More from this author