PROPOSAL: language support for JSR 292

John Rose John.Rose at Sun.COM
Wed Apr 29 19:37:01 PDT 2009


I have factored out the Dynamic type from the proposal, leaving a  
static-only type called InvokeDynamic in its place.  Here is the  
updated spec (also enclosed FTR):
   http://wikis.sun.com/display/mlvm/ProjectCoinProposal

The type java.dyn.InvokeDynamic is a uninstatiable class (like  
Collections or Arrays) with no apparent methods. However, the compiler  
treats it has if it had an infinite supply of static methods of all  
names and signatures, for which it generates invokedynamic  
instructions instead of invokestatic instructions.

By removing the value type Dynamic from the base proposal, we serve  
the immediate need for system programming on top of JSR 292, while  
deferring the question (a truly absorbing and important question) of  
integrating dynamic values with Java's type system.

-- John

P.S.  The factored-out parts, about interface Dynamic and its  
interesting rules for conversion and method invocation, are placed here:
   http://wikis.sun.com/display/mlvm/InterfaceDynamic

And, should you have an appetite for even more of the same, some rough  
notes a fuller integration of Java with dynamic types is here:
   http://wikis.sun.com/display/mlvm/DynamicJava

P.P.S. Here is a text-only copy of the basic proposal:

-------------- next part --------------



More information about the coin-dev mailing list