<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style type="text/css" style="display:none;"> P {margin-top:0;margin-bottom:0;} </style>
</head>
<body dir="ltr">
<div style="margin: 0px;" class="elementToProof" id="app">
<div style="background-color: var(--neutralSecondarySurface); margin: 0px;" class="elementToProof" id="appContainer">
<div style="margin: 0px;" class="elementToProof" id="mainApp">
<div style="background-color: var(--neutralSecondarySurface); margin: 0px; min-width: 0px;" class="elementToProof">
<div style="margin: 0px; min-height: 0px;" class="elementToProof" id="MainModule">
<div style="margin: 0px 0px 0px 1px; min-width: 370px;" class="elementToProof" id="Skip to message-region">
<div style="background-color: var(--neutralSecondarySurface); margin: 0px;" class="elementToProof" id="ReadingPaneContainerId">
<div style="margin: 0px 0px 8px 8px; min-width: 300px;" class="elementToProof" id="ConversationReadingPaneContainer">
<div style="background-color: var(--neutralPrimarySurface); margin: 2px; padding: 6px 12px 12px; border-width: 1px; border-style: solid; border-color: transparent; border-radius: 4px;" class="elementToProof" id="focused">
<div style="margin: 12px 16px 0px 52px; padding-bottom: 2px;" class="elementToProof">
<div style="margin: 0px;" class="elementToProof" id="UniqueMessageBody_20">
<div style="font-family: var(--fontFamilyBase); font-size: 11pt; color: var(--neutralDark);">
I hereby propose the (re)creation of the Detroit Project, with myself as<br>
the Lead and the Compiler Group as the sponsoring Group.<br>
<br>
The Detroit Project was originally created in February 2018 [1], with<br>
the intent to develop an implementation of the JCP-standard javax.script<br>
API [2][3] based on the V8 JavaScript engine [4].  This would enable<br>
JavaScript to be used as an extension language for Java applications,<br>
and likewise Java libraries to be accessed from JavaScript applications.<br>
The Project never got off the ground, however, so it was dissolved in<br>
September 2024 [5].<br>
<br>
Here in February 2026, there is still interest in using Java and<br>
JavaScript together.  With the rise of AI, moreover, there is also<br>
interest in accessing AI functionality written in Python from Java<br>
applications.<br>
<br>
Some colleagues and I have therefore revived the original prototype<br>
JavaScript script engine based on V8, and have also prototyped a Python<br>
script engine based on CPython [6].  Using widely-adopted JavaScript<br>
and Python implementations, rather than re-implementing JavaScript and<br>
Python from scratch, ensures both low long-term maintenance costs and<br>
compatibility for existing JavaScript and Python code.<br>
<br>
We would like to move these prototypes into a proper OpenJDK Project<br>
in order to accelerate development.  We expect to leverage and push<br>
the boundaries of the FFM API [7], so this work will likely influence<br>
Project Panama.  Over time, the Project may consider implementing<br>
script engines for additional languages.<br>
<br>
The initial Committers will be:<br>
<br>
  Jim Laskey<br>
  Sundararajan Athijegannathan<br>
  Jorn Vernee<br>
  Mikael Vidstedt<br>
  Henry Jen<br>
  Maurizio Cimadamore<br>
  Alan Bateman<br>
  Hannes Wallnöfer<br>
  Jan Lahoda<br>
  Jaikiran Pai<br>
<br>
Votes are due by midnight UTC on Wednesday, 11 March.<br>
<br>
Only current OpenJDK Members [8] are eligible to vote on this motion.<br>
Votes must be cast in the open on the discuss list.  Replying to this<br>
message is sufficient if your mail program honors the Reply-To header.<br>
<br>
For Lazy Consensus voting instructions, see [9].<br>
<br>
Sundar<br>
<br>
<br>
[1] <a style="margin: 0px;" data-linkindex="0" data-auth="NotApplicable" rel="noopener noreferrer" title="https://mail.openjdk.org/pipermail/announce/2018-February/000244.html" class="OWAAutoLink" id="OWA3fd5b554-f3fb-b295-c6b5-0ea8216d8a67" target="_blank" href="https://mail.openjdk.org/pipermail/announce/2018-February/000244.html">
https://mail.openjdk.org/pipermail/announce/2018-February/000244.html</a><br>
[2] <a style="margin: 0px;" data-linkindex="1" data-auth="NotApplicable" rel="noopener noreferrer" title="https://docs.oracle.com/en/java/javase/25/docs/api/java.scripting/javax/script/package-summary.html" class="OWAAutoLink" id="OWA6b9d177c-d869-2b0d-881e-0ff62b4e9df7" target="_blank" href="https://docs.oracle.com/en/java/javase/25/docs/api/java.scripting/javax/script/package-summary.html">
https://docs.oracle.com/en/java/javase/25/docs/api/java.scripting/javax/script/package-summary.html</a><br>
[3] <a style="margin: 0px;" data-linkindex="2" data-auth="NotApplicable" rel="noopener noreferrer" title="https://jcp.org/en/jsr/detail?id=223" class="OWAAutoLink" id="OWA5a4454f1-8e87-9b84-50e1-a8b9e5883ba1" target="_blank" href="https://jcp.org/en/jsr/detail?id=223">
https://jcp.org/en/jsr/detail?id=223</a><br>
[4] <a style="margin: 0px;" data-linkindex="3" data-auth="NotApplicable" rel="noopener noreferrer" title="https://v8.dev" class="OWAAutoLink" id="OWAb00106c1-df56-ff48-1ef4-456fe6de5eac" target="_blank" href="https://v8.dev">
https://v8.dev</a><br>
[5] <a style="margin: 0px;" data-linkindex="4" data-auth="NotApplicable" rel="noopener noreferrer" title="https://mail.openjdk.org/pipermail/compiler-dev/2024-September/027645.html" class="OWAAutoLink" id="OWA1b1522ab-f774-cc79-3134-70a61fc2ee26" target="_blank" href="https://mail.openjdk.org/pipermail/compiler-dev/2024-September/027645.html">
https://mail.openjdk.org/pipermail/compiler-dev/2024-September/027645.html</a><br>
[6] <a style="margin: 0px;" data-linkindex="5" data-auth="NotApplicable" rel="noopener noreferrer" title="https://github.com/python/cpython" class="OWAAutoLink" id="OWA75bddd70-bf0f-77ec-7fec-a2e786bb57a5" target="_blank" href="https://github.com/python/cpython">
https://github.com/python/cpython</a><br>
[7] <a style="margin: 0px;" data-linkindex="6" data-auth="NotApplicable" rel="noopener noreferrer" title="https://openjdk.org/jeps/454" class="OWAAutoLink" id="OWA3164a9ba-9e14-ccc3-e969-4e36dd2da588" target="_blank" href="https://openjdk.org/jeps/454">
https://openjdk.org/jeps/454</a><br>
[8] <a style="margin: 0px;" data-linkindex="7" data-auth="NotApplicable" rel="noopener noreferrer" title="http://openjdk.java.net/census#members" class="OWAAutoLink" id="OWA23a0deeb-8c7a-19b4-19fb-5d7f403fa0cb" target="_blank" href="http://openjdk.java.net/census#members">
http://openjdk.java.net/census#members</a><br>
[9] <a style="margin: 0px;" data-linkindex="8" data-auth="NotApplicable" rel="noopener noreferrer" title="http://openjdk.java.net/projects/#new-project-vote" class="OWAAutoLink" id="OWA5378a1b1-86dc-5d7b-02b0-d0948b37e5aa" target="_blank" href="http://openjdk.java.net/projects/#new-project-vote">
http://openjdk.java.net/projects/#new-project-vote</a></div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<div style="margin: 0px;" class="elementToProof" id="FlexPane_Overflow_Container">
<div style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
<br>
</div>
</div>
<div style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
<br>
</div>
</body>
</html>