----- Mail original ----- > De: "John Rose" <john.r.r...@oracle.com> > À: "Remi Forax" <fo...@univ-mlv.fr> > Cc: "valhalla-spec-experts" <valhalla-spec-experts@openjdk.java.net> > Envoyé: Lundi 20 Novembre 2017 00:06:20 > Objet: Re: abandon all U-types, welcome to L-world (or, what I learned in > Burlington)
> On Nov 19, 2017, at 2:47 PM, Remi Forax <fo...@univ-mlv.fr> wrote: >> >> The claim is that Object is used more as the root of any types like in >> collections than as the root of all references like in System.out.println(). > > > Object and interfaces play the role of top types. One view is that we are > making > object act more like an interface. ah, yes, it makes the whole model far simpler. > > Also we don’t add any new carrier types to the interpreter. but you need a way disambiguate a reference type from a value type at runtime in the interpreter. You also nedd to teach JITs to propagate L vs which Q info on local variables for generics specialization (and it works even if the inlining fails because the boxing/wrapping in the thread local storage is done by the adapters so the JITed code doesn't have to be conservative). Rémi