Next rounds of prototype

Brian Goetz brian.goetz at oracle.com
Thu Jul 9 16:58:32 UTC 2015


Yes -- we're still a bit aways, but when we're ready, we'll take you up 
on that!

On 7/9/2015 11:57 AM, Martijn Verburg wrote:
> Hi Brian,
>
> Count us in for a hack day when you're happy with the prototype -
> perhaps we can get an Valhalla commiter along on the day if schedules
> work out.
>
> Cheers,
> Martijn
>
> On Thursday, 9 July 2015, Brian Goetz <brian.goetz at oracle.com
> <mailto:brian.goetz at oracle.com>> wrote:
>
>     In the next week or two, we'll be pushing parts of our next round of
>     prototype for anyfied generics.
>
>
>     The central complaint about the existing prototype has been the lack of
>     a common supertype between Foo<int> and Foo<String>, other than
>     Object.  (Much existing code relies on wildcards, for better or worse.)
>
>     Of course, we didn't pursue the original path because we loved the
>     resulting type system; we pursued this path because it was *what was
>     possible with the JVM architecture we have*.  That's not to say that
>     changing the JVM is off the table (as it was in Java 5), but doing so is
>     even more costly than changing the language (which is already quite
>     expensive), and it would have been irresponsible to pursue VM-centric
>     options without first exploring what could be done without VM changes.
>
>     Of course, even once "change the VM" is under consideration, there is a
>     broad spectrum of cost, ranging from "merely extremely expensive" to
>     "obscenely expensive."  So a responsible investigation involves
>     extensive exploration to identify sensible and cost-effective
>     improvements.
>
>     To that end, we've spent the past several months identifying what we
>     could do in the VM to enable a useful common supertype for all
>     instantiations (whether that is spelled "Foo<?>" is a separate
>     question), and, after several rounds, have pared this down to something
>     that is conceivably implementable with a tractibly-small set of VM
>     changes.  In the next week or two, we'll be pushing a prototype
>     implementation of the compiler.  We'll follow that up with some new
>     new documents describing what we've done, and prototypes of some of
>     the VM features that are needed to plug the holes.  I'm sure there
>     are lots of questions; hopefully they will be answered when we can
>     write it all up.
>
>     As always, the most important feedback we can get is from people *using*
>     the prototype.  We'll post a short summary of the language changes
>     so folks can play with the prototype more effectively.
>
>
>
>
> --
> Cheers, Martijn (Sent from Gmail Mobile)



More information about the valhalla-dev mailing list