[Anti-Pitch] Just say "no" to protocols on structural types?

I'll note that we really don't deal with it. We just pick one at run time. And this is one of the remaining forms of library evolution that will break clients.

Retroactive conformances (i.e. conformances where your module owns neither the type nor the protocol) are dangerous no matter what if you depend on a library you can't pin to a specific version. That said, conformances to protocols you do own are perfectly reasonable.

4 Likes