<div dir="ltr"><div>I think this will be a nice addition.<br></div><div><br></div><div>On Tue, May 2, 2023 at 5:17 PM Gavin Bierman <<a href="mailto:gavin.bierman@oracle.com">gavin.bierman@oracle.com</a>> wrote:</div><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">The first draft of the spec change document for the feature Unnamed classes and instance main methods [1] (the "on-ramp" feature) is now available at:<br>
<br>
<a href="https://cr.openjdk.org/~gbierman/jep445/latest/" rel="noreferrer" target="_blank">https://cr.openjdk.org/~gbierman/jep445/latest/</a></blockquote><div><br></div>1. Minor nit: "An unnamed top level class compilation unit implicitly declares an class..." -  should be "a class".</div><div class="gmail_quote"><br></div><div class="gmail_quote">2. Just to clarify my own understanding, is this correct? "Unnamed top level class" is a source code only concept; given a class file, it is not possible to definitively say whether it came from an "unnamed top level class".</div><div class="gmail_quote"><br></div><div class="gmail_quote">3. The JEP shows an example of compiling a class "HelloWorld.java" into a class file "HelloWorld.java" and states "In this case the compiler chooses <code>HelloWorld</code> for the class name as an implementation detail". So far, so good. But then in the spec it says:</div><div class="gmail_quote"><br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div class="gmail_quote">In simple implementations of the Java SE Platform, where compilation
units are stored in files, the binary name of an unnamed top level class
would typically be the name of the file containing the unnamed top level
class compilation unit (<a href="https://cr.openjdk.org/~gbierman/jep445/jep445-20230502/specs/unnamed-classes-instance-main-methods-jls.html#jls-7.3">7.3</a>).</div></blockquote><div class="gmail_quote"><br></div><div class="gmail_quote">That would imply that the binary name of the JEP example would be "HelloWorld.java", not "HelloWorld". So maybe to clarify this should say "the name of the file (minus the ".java" suffix) containing the unnamed top level class compilation unit".<br></div><div class="gmail_quote"><br></div><div class="gmail_quote">-Archie</div><div class="gmail_quote"><br></div><span class="gmail_signature_prefix">-- </span><br><div dir="ltr" class="gmail_signature">Archie L. Cobbs<br></div></div>