<html><head>
<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1"></head><body
bgcolor="#FFFFFF" text="#000000">
<meta charset="utf-8"><b style="font-weight:normal;"
id="docs-internal-guid-cbce8c31-7fff-02b9-20db-7ed59de7e1af"><p
dir="ltr" style="line-height:1.38;margin-top:0pt;margin-bottom:0pt;"><span
style="font-size:11pt;font-family:Arial;color:#000000;background-color:transparent;font-weight:400;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;white-space:pre;white-space:pre-wrap;">We
are happy to announce an initial release of JLang, a Java-to-LLVM
ahead-of-time compiler, on Github at </span><a
href="https://polyglot-compiler.github.io/JLang/" style="
text-decoration: none;"><span
style="font-size:11pt;font-family:Arial;color:#1155cc;background-color:transparent;font-weight:400;font-style:normal;font-variant:normal;text-decoration:underline;-webkit-text-decoration-skip:none;text-decoration-skip-ink:none;vertical-align:baseline;white-space:pre;white-space:pre-wrap;">https://polyglot-compiler.github.io/JLang/</span></a><span
style="font-size:11pt;font-family:Arial;color:#000000;background-color:transparent;font-weight:400;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;white-space:pre;white-space:pre-wrap;">.
JLang compiles Java source code directly to LLVM, allowing a variety of
LLVM back ends to be used to target various architectures. The JVM and
JNI interfaces are supported with a shared library whose source code is
also distributed as part of JLang. Support for Java libraries is
provided by compiling the OpenJDK Java source into a shared library with
JLang and then linking the OpenJDK native libraries. JLang is built on
top of the Polyglot extensible compiler framework, so it supports
experimentation with new language features and with new implementation
techniques.</span></p><br><p dir="ltr"
style="line-height:1.38;margin-top:0pt;margin-bottom:0pt;"><span
style="font-size:11pt;font-family:Arial;color:#000000;background-color:transparent;font-weight:400;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;white-space:pre;white-space:pre-wrap;">The
current JLang release can be used to compile and run a variety of Java
programs, but it has a number of significant limitations that are in the
process of being addressed:</span></p><ul
style="margin-top:0pt;margin-bottom:0pt;"><li dir="ltr"
style="list-style-type:disc;font-size:11pt;font-family:Arial;color:#000000;background-color:transparent;font-weight:400;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;white-space:pre;"><p
dir="ltr" style="line-height:1.38;margin-top:0pt;margin-bottom:0pt;"><span
style="font-size:11pt;font-family:Arial;color:#000000;background-color:transparent;font-weight:400;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;white-space:pre;white-space:pre-wrap;">JLang
implements Java 7, so does not yet support some newer Java features
such as lambdas, default methods, or modules.</span></p></li><li
dir="ltr"
style="list-style-type:disc;font-size:11pt;font-family:Arial;color:#000000;background-color:transparent;font-weight:400;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;white-space:pre;"><p
dir="ltr" style="line-height:1.38;margin-top:0pt;margin-bottom:0pt;"><span
style="font-size:11pt;font-family:Arial;color:#000000;background-color:transparent;font-weight:400;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;white-space:pre;white-space:pre-wrap;">Java
concurrency is not supported.</span></p></li><li dir="ltr"
style="list-style-type:disc;font-size:11pt;font-family:Arial;color:#000000;background-color:transparent;font-weight:400;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;white-space:pre;"><p
dir="ltr" style="line-height:1.38;margin-top:0pt;margin-bottom:0pt;"><span
style="font-size:11pt;font-family:Arial;color:#000000;background-color:transparent;font-weight:400;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;white-space:pre;white-space:pre-wrap;">Some
corners of the reflection API need more work.</span></p></li></ul><br><p
dir="ltr" style="line-height:1.38;margin-top:0pt;margin-bottom:0pt;"><span
style="font-size:11pt;font-family:Arial;color:#000000;background-color:transparent;font-weight:400;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;white-space:pre;white-space:pre-wrap;">We
welcome the involvement of external contributors. Interested parties
can subscribe to the users mailing list from the JLang web site.</span></p><br>
<p dir="ltr" style="line-height: 1.38; margin-top: 0pt; margin-bottom:
0pt;"><span style="font-size: 11pt; font-family: Arial; color: rgb(0,
0, 0); background-color: transparent; font-weight: 400; font-style:
normal; font-variant: normal; text-decoration: none; vertical-align:
baseline; white-space: pre-wrap;">JLang has been implemented by Daniel
Donenfeld, Matt Gharrity, Daniel Weber, Drew Zagieboylo, and Yizhou
Zhang.<br>
</span></p>
<p dir="ltr" style="line-height: 1.38; margin-top: 0pt; margin-bottom:
0pt;"><span style="font-size: 11pt; font-family: Arial; color: rgb(0,
0, 0); background-color: transparent; font-weight: 400; font-style:
normal; font-variant: normal; text-decoration: none; vertical-align:
baseline; white-space: pre-wrap;"><br>
-----<br>
</span></p>
<p dir="ltr" style="line-height: 1.38; margin-top: 0pt; margin-bottom:
0pt;"><span style="font-size: 11pt; font-family: Arial; color: rgb(0,
0, 0); background-color: transparent; font-weight: 400; font-style:
normal; font-variant: normal; text-decoration: none; vertical-align:
baseline; white-space: pre-wrap;">Andrew Myers</span></p>
<p dir="ltr"
style="line-height:1.38;margin-top:0pt;margin-bottom:0pt;"><b><b
style="font-weight:normal;"
id="docs-internal-guid-cbce8c31-7fff-02b9-20db-7ed59de7e1af"><span
style="font-size:11pt;font-family:Arial;color:#000000;background-color:transparent;font-weight:400;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;white-space:pre;white-space:pre-wrap;">Department
of Computer Science<br>
</span></b></b><span
style="font-size:11pt;font-family:Arial;color:#000000;background-color:transparent;font-weight:400;font-style:normal;font-variant:normal;text-decoration:none;vertical-align:baseline;white-space:pre;white-space:pre-wrap;">Cornell
University<br>
</span></p>
</b>
</body>
</html>