Unlock Existential Types for All Protocols

I don’t want to hijack this thread but you can read more about it on the previous thread. The idea is for the compiler to require the partial identifier at the call site so the user has to acknowledge that they understand that the existential they are using is only as much of its protocol’s API as possible to be “the most specific possible common supertype of all types conforming to the protocol” when that’s not everything. If it is constrained enough to fully conform to the protocol (or requires no constraint to do so) the partial qualifier would not be used at the call site and would have the current spelling.

1 Like