JDK7 language specification issue with MethodHandle

Joe Darcy joe.darcy at oracle.com
Fri Jun 10 12:10:41 PDT 2011

Hi Neal.

Neal Gafter wrote:
> On Tue, Jun 7, 2011 at 10:06 AM, Joe Darcy <joe.darcy at oracle.com 
> <mailto:joe.darcy at oracle.com>> wrote:
>     The JCP SE/EE executive committee voted to approve the JSR 336
>     public review
>       http://www.jcp.org/en/jsr/results?id=5207
>     and the JSR 336 public review describes JSR 292 as including Java
>     language changes.
> *The jsr292 specification which was published for public review does 
> not propose any changes to the Java Language Specification.*
> You said on April 18 that "Changes to the JSR 292 specification to 
> clarify [sic] the Java language changes that support MethodHandle are 
> in process".  That process appears not to have occurred, as there are 
> no further public drafts of the jsr292 specification.
> The jsr336 specification doesn't propose any changes to the Java 
> Language Specification either, other than pointing to other jsrs.
> jsr901, the language "maintenance" jsr, does specify language changes, 
> but it has no independent approval process.  The public review period 
> for its changes coincided with an outage in Oracle's public website 
> for viewing the issues it is alleged to address, which made impossible 
> any practical review of the changes. In any case, jsr901 contains no 
> jsr292-related changes such as polymorphic method signatures.
> Of course, with no public access to the expert group discussions it is 
> very hard for me to know precisely what it was that was decided in 
> either case.  But based on the documents that have been published, 
> jsr336 didn't appear to approve for inclusion into SE 7 any language 
> changes that relate to jsr292.
> Cheers,
> Neal

The javadoc of the JSR 292 Public Review identified changes to the JVM 
Specification and discussed method handle invocation from the Java 
language.  Admittedly the review could have done a better job of 
explicitly calling out the implied Java Language Specification changes.

The forthcoming JSR 292 Proposed Final Draft will identify in detail its 
changes to both the JVM Specification and the Java Language Specification.

The JVMS and JLS Maintenance Reviews earlier in 2011 were not related to 
JSR 292.  Specifically, changes to casting conversion that turn out to 
be of use to JSR 292 were proposed independently years ago, see 

The JVMS and JLS updated for JSR 292 (and JSR 334) will included as part 
of JSR 336's Proposed Final Draft; those specifications will also 
reflect the accumulated maintenance changes from JSR 901, etc.


More information about the compiler-dev mailing list