hg: jdk7/tl/langtools: 6829189: Java programming with JSR 292 needs language support

Neal Gafter neal at gafter.com
Thu May 7 11:18:42 PDT 2009


Folks-

I am a bit worried about this change:

   1. It isn't clear what, if any, gating process controls specification
   changes in openjdk.  Language changes are particularly sensitive, so the
   lack of an obvious gating process is particularly egregious.  It seems
   backwards for changes to be integrated into the implementation before an
   expert group has even formed to consider them.
   2. These changes are not covered by any jsr or draft jsr.  It hasn't been
   examined by any expert group formed to consider language changes.  Is there
   a plan for such review?  Has anyone attempted to draft the JLS amendments?
   Has someone analyzed the jsr308 interactions?  Are these changes going to be
   included in project Coin?  It's not on Joe Darcy's short list as of earlier
   this week.  If it will be on that list, I can easily imagine these changes
   consuming a significant fraction of the bandwidth of the group, so it can't
   just be dropped in as an afterthought.
   3. The specification has many unresolved issues (e.g., the InvokeDynamic
   support doesn't appear to have a way to identify the receiver).  Is there an
   issues list and a plan to work through it?

Small issues with the code:

   1. In the method emitInvokedynamic, the test for "alive" should precede
   emitting any bytecodes.
   2. The language features appear to be enabled based on the "-target"
   option.  That's backwards.  It should depend on the "-source" option.

Cheers,
Neal

On Mon, May 4, 2009 at 9:09 PM, <john.rose at sun.com> wrote:

> Changeset: e2722bd43f3a
> Author:    jrose
> Date:      2009-05-04 21:04 -0700
> URL:       http://hg.openjdk.java.net/jdk7/tl/langtools/rev/e2722bd43f3a
>
> 6829189: Java programming with JSR 292 needs language support
> Summary: Language changes documented in
> http://wikis.sun.com/display/mlvm/ProjectCoinProposal
> Reviewed-by<http://wikis.sun.com/display/mlvm/ProjectCoinProposal%0AReviewed-by>:
> jjg, darcy, mcimadamore
>
> ! src/share/classes/com/sun/tools/classfile/Opcode.java
> ! src/share/classes/com/sun/tools/javac/code/Symtab.java
> ! src/share/classes/com/sun/tools/javac/comp/Attr.java
> ! src/share/classes/com/sun/tools/javac/comp/Check.java
> ! src/share/classes/com/sun/tools/javac/comp/Resolve.java
> ! src/share/classes/com/sun/tools/javac/jvm/ByteCodes.java
> ! src/share/classes/com/sun/tools/javac/jvm/ClassReader.java
> ! src/share/classes/com/sun/tools/javac/jvm/Code.java
> ! src/share/classes/com/sun/tools/javac/jvm/Gen.java
> ! src/share/classes/com/sun/tools/javac/jvm/Items.java
> ! src/share/classes/com/sun/tools/javac/jvm/Target.java
> ! src/share/classes/com/sun/tools/javac/main/Main.java
> ! src/share/classes/com/sun/tools/javac/parser/JavacParser.java
> ! src/share/classes/com/sun/tools/javac/parser/Scanner.java
> ! src/share/classes/com/sun/tools/javac/resources/compiler.properties
> ! src/share/classes/com/sun/tools/javac/util/Names.java
> ! src/share/classes/com/sun/tools/javap/ConstantWriter.java
> ! src/share/classes/sun/tools/javap/JavapPrinter.java
> ! src/share/classes/sun/tools/javap/RuntimeConstants.java
> + test/tools/javac/meth/InvokeDyn.java
> + test/tools/javac/meth/InvokeMH.java
> + test/tools/javac/meth/MakeNegTests.sh
> + test/tools/javac/quid/MakeNegTests.sh
> + test/tools/javac/quid/QuotedIdent.java
> + test/tools/javac/quid/QuotedIdent2.java
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mail.openjdk.java.net/pipermail/compiler-dev/attachments/20090507/e0980294/attachment.html 


More information about the compiler-dev mailing list