I would prefer the name `Xxxable` to imply a method `xxx`. For example `CustomStringConvertable` becomes `Describable`, because its method is `description`. Similarly `IntergerLiteralConvertable` becomes `IntegerLiteralInitializable` because it has an `init` with a `integerLiteral` label. IE I am suggesting a one-to-one correspondence between the main 'method' name and the protocol name with 'able' added.<br><br>On Thursday, 3 March 2016, Bradley Hilton via swift-evolution <<a href="javascript:_e(%7B%7D,'cvml','swift-evolution@swift.org');" target="_blank">swift-evolution@swift.org</a>> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Just going to put in my two cents: I think `Initializable` makes more sense than `Createable` or `Instantiable` assuming that we want to encourage protocols with initializers rather than static methods which aren’t as pretty. ;) I believe `Serializable` or `Representable` would be great for converting types to a given value. I’m also of the mind that `Convertible` should represent the combination of `Initializable` and `Serializable` protocols and may in many cases simply exist as a convenience protocol that inherits from the two.<br>
<br>
> I have drafted a proposal to establish precise conventional meaning for the use of `Convertible`, `Representable`, and `Projectable` protocol suffixes. The proposal would require renaming `CustomStringConvertible` and `CustomDebugStringConvertible` to `CustomStringProjectable` and `CustomStringProjectable` respectively<br>
><br>
> I am seeking input on the proposal before submitting a PR. The full draft can found at <a href="https://github.com/anandabits/swift-evolution/blob/conversion-protocol-conventions/proposals/0000-conversion-protocol-conventions.md" target="_blank">https://github.com/anandabits/swift-evolution/blob/conversion-protocol-conventions/proposals/0000-conversion-protocol-conventions.md</a><<a href="https://github.com/anandabits/swift-evolution/blob/conversion-protocol-conventions/proposals/0000-conversion-protocol-conventions.md" target="_blank">https://github.com/anandabits/swift-evolution/blob/conversion-protocol-conventions/proposals/0000-conversion-protocol-conventions.md</a>>.<br>
><br>
> Thanks,<br>
> Matthew<br>
><br>
><br>
><br>
_______________________________________________<br>
swift-evolution mailing list<br>
<a>swift-evolution@swift.org</a><br>
<a href="https://lists.swift.org/mailman/listinfo/swift-evolution" target="_blank">https://lists.swift.org/mailman/listinfo/swift-evolution</a><br>
</blockquote>
<br><br>-- <br>-- Howard.<br>