At least SR-103 is a legitimate bug that we would like to fix one day. Slava
> On Nov 5, 2017, at 1:27 AM, Goffredo Marocchi <pana...@gmail.com> wrote: > > I would say that you kind of already entered a slippery slope when the > extension to a protocol can add code / not just declare a behavioural > contract and how it changes OOP approach (hence: > https://bugs.swift.org/plugins/servlet/mobile#issue/SR-302 > <https://bugs.swift.org/plugins/servlet/mobile#issue/SR-302> and > https://bugs.swift.org/browse/SR-103 <https://bugs.swift.org/browse/SR-103> > and https://bugs.swift.org/plugins/servlet/mobile#issue/SR-584 > <https://bugs.swift.org/plugins/servlet/mobile#issue/SR-584>) > > References: > https://nomothetis.svbtle.com/the-ghost-of-swift-bugs-future > <https://nomothetis.svbtle.com/the-ghost-of-swift-bugs-future> > https://www.raizlabs.com/dev/2016/12/swift-method-dispatch > <https://www.raizlabs.com/dev/2016/12/swift-method-dispatch/> > > Sent from my iPhone > > On 5 Nov 2017, at 01:08, Slava Pestov <spes...@apple.com > <mailto:spes...@apple.com>> wrote: > >> >> >>> On Nov 4, 2017, at 1:32 AM, Goffredo Marocchi <pana...@gmail.com >>> <mailto:pana...@gmail.com>> wrote: >>> >>> >>> >>> Sent from my iPhone >>> >>>> On 4 Nov 2017, at 05:26, Slava Pestov via swift-evolution >>>> <swift-evolution@swift.org <mailto:swift-evolution@swift.org>> wrote: >>>> >>>> Protocols define requirements, they don’t “add” things to the conforming >>>> type >>> >>> I agree with this, but then this warrants a change for protocol extensions >>> too. Would you be happy with the restriction that default method >>> implementations are only available for value types and not for classes (as >>> structs cannot share code any other way, it is the argument for that I seem >>> to recall)? >> >> Protocol extensions are in some sense just syntax sugar for defining new >> functions. Having a protocol conformance add storage to the conforming type >> is fundamentally different. >> >> Slava >> >>> >>> >>
_______________________________________________ swift-evolution mailing list swift-evolution@swift.org https://lists.swift.org/mailman/listinfo/swift-evolution