There are five buckets now

John Rose john.r.rose at oracle.com
Wed Jul 13 21:02:06 UTC 2022


On 13 Jul 2022, at 13:23, John Rose wrote:

> …The surprising outcome of this is we now have (by my count) five 
> buckets.  And I don’t think we mind, because they are all about 
> encapsulation choices.
>
> 1. identity = B1
> 2. better VBC (by-default private companion, by-default atomic) = B2
> 3. full-flat primitive (explicitly public non-atomic companion) = B3n
> 4. atomic primitive (explicitly public companion, but no tearing) = 
> B3a
> 5. internally-flat VBC (private companion, tricky full-flat private 
> vals)

P.S. At a full count there are seven buckets, as I said in the meeting, 
since a “privatized” companion type can be either package-private 
(aka. default access) or fully private (nestmate access only).  So we 
have `B = id + val[atomic={yes,no}, 
access={public,package-private,private}]`.  The list above splits 
sub-cases for package-private out of case 2 and case 5.

At this rate, any bets on how long it takes to get into the double 
digits? :-)
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mail.openjdk.org/pipermail/valhalla-spec-experts/attachments/20220713/216a40e4/attachment-0001.htm>


More information about the valhalla-spec-experts mailing list