[swift-evolution] Should we rename "class" when referring to protocol conformance?

Dave Abrahams dabrahams at apple.com
Sun May 22 15:42:14 CDT 2016

on Sun May 22 2016, Matthew Johnson <swift-evolution at swift.org> wrote:

> What I am arguing for is the ability to distinguish aggregates which
> are logically isolated from aggregates which contain salient
> references to shared mutable state. 

Everything with value semantics is logically isolated in that way.

> To be honest, I am really struggling to understand why this
> distinction seems unimportant to you.

The non-exposure of shared mutable state is a hugely important property
of well-encapsulated design.  However, I don't believe it's appropriate
to represent that with a protocol, because I don't believe there exist
any generic components whose correctness depends on it.


More information about the swift-evolution mailing list