> On Oct 25, 2020, at 10:06 AM, Brian Goetz <[email protected]> wrote:
>
> To make it clear that I'm not talking about the annoyance of typing the cast,
> let's pretend I'm suggesting to write it like this:
>
> BarImpl bi = (__static BarImpl) b;
Pulling on this string some more — I think there’s a connection between this
feature and total statement switches. We’ve been looking for a way to make
statement switches total, and here, what we’re looking for is a way to make
_casts_ total. Which suggests this is one feature, not two. So perhaps:
switch-total (x) { … } // a switch, but with added bonus totality checking
BarImpl b = (total BarImpl) bar // a cast, but with added bonus totality
checking
Obviously we can use another word besides `total`, but it’s a pretty good straw
man.