[External] : Re: User model: terminology

Brian Goetz brian.goetz at oracle.com
Thu May 5 16:13:33 UTC 2022


As a general meta-observation, the whole point of the "let's throw all 
the pieces in the air" discussions is that often, when you break some 
existing assumptions, you can reassemble the pieces in a lower energy 
state -- but you usually can't get there in one move.  So usually in the 
middle of that process, you find yourself transiting through states 
which may be more mathematically attractive but less syntactically 
attractive; the key is to sit on your aesthetic reaction and realize 
that this may well be an intermediate state.

There was a lot of pushback to the "User model stacking" thread 
(including in the -comments postings), on the basis of "these names 
suck" or "there are too many knobs".  But its unlikely we get to the 
right stacking without first going through a less attractive, but more 
general stacking.

The inversion below might not be part of the final answer, but let's let 
the process play out, I think we're making progress.

On 5/4/2022 3:36 PM, Brian Goetz wrote:
>
>
> Pulling farther, there's a bucket-inversion we might be able to pull 
> here, just by moving some terminology around:
>
>     class B1 { }                 // ref only
>     value class B3 { }           // ref and val projections
>     value-based class B2 { }     // ref only


More information about the valhalla-spec-observers mailing list