A thought regarding how protocols are used in Swift. Having the protocol(s) following the superclass class name using a comma is similar to the way multiple class inheritance is declared in C++.
C++ multiple inheritance:
Class myClass: superClassA, superClass B
Swift protocol used in a class:
class myClass: superClass, myProtocol
The two are similar. It would seem less confusing for someone coming from a C++ background if it was something like the following:
class myClass: superClass protocol: myProtocolA, myProtocolB