CFV: New Project: Detroit

Jim Laskey james.laskey at oracle.com
Wed Jan 31 16:38:33 UTC 2018


I hereby propose the creation of the Detroit Project with Hannes
Wallnöfer as the Lead and the Compiler Group as the sponsoring Group.

In accordance with the OpenJDK guidelines [1], this project will provide
the home for the development of a native implementation of the
javax.script package based on the Chrome V8 JavaScript engine [2]. Our
starting point is the prototype presented by James Laskey at JVMLS 2017 [3].

The resulting implementation will contain V8 itself together with the
necessary Java and JavaScript bindings.  When loaded by a JVM process it
provides a new javax.script.ScriptEngine [4] called "V8" that allows
loading and execution of JavaScript code via V8.

We also want to support a significant subset of the JavaScript
extensions implemented in Nashorn [5], including accessing,
instantiating, and extending or implementing Java types from JavaScript. 

The initially targeted platforms are Linux and Mac OS X. V8 sources are
acquired by build processes. We do not plan to modify the V8 sources in
any way.  Thus, maintenance and updating to new upstream releases will
be straightforward.

While the initial implementation will be based on JNI, the project could
act as a platform for new technologies developed in Project Panama [6]
in the future.

The initial list of reviewers and committers will be based on the
current reviewers and committers of the Nashorn team:

James Laskey (reviewer)
Sundararajan Athijegannathan (reviewer)
Hannes Wallnöfer (reviewer)
Srinivas Dama (committer)
Priya Lakshmi Muthuswamy (committer)

Votes are due by the end of Wednesday, February 7, 2018.

Only current OpenJDK Members [7] are eligible to vote on this 
motion.  Votes must be cast in the open on the discuss list.
Replying to this message is sufficient if your mail program
honors the Reply-To header.

For Lazy Consensus voting instructions, see [8].

Jim Laskey

[1] http://openjdk.java.net/projects/#new-project
[2] https://developers.google.com/v8/
[3] https://www.youtube.com/watch?v=-JLhwsbMvjQ
[4] https://docs.oracle.com/javase/9/docs/api/javax/script/package-summary.html
[5] https://wiki.openjdk.java.net/display/Nashorn/Nashorn+extensions
[6] http://openjdk.java.net/projects/panama/
[7] http://openjdk.java.net/census#members
[8] http://openjdk.java.net/projects/#new-project-vote


More information about the announce mailing list