Okay, I undertand. I’m just worried that the proposal is a net negative if the keywords stay optional. I’ll mention it in more detail once we get to the review period.
Thanks for the work on the proposal!! > On 16 Jun 2017, at 16:33, Erica Sadun <er...@ericasadun.com> wrote: > > As we say in our introduction, we're pitching the most conservative approach. > > The proposal was designed for minimal language impact. It chooses a > conservative approach that can be phased in first over time and language > release over more succinct alternatives that would impact existing code bases. > > We discuss the one keyword version (which most of us are a fan of) in the > alternatives. The core team has to decide how much they're willing to allow > existing code to warn and/or break, which is the consequence of the one > keyword solution. > > -- E > >> On Jun 16, 2017, at 7:44 AM, David Hart <davidh...@fastmail.com >> <mailto:davidh...@fastmail.com>> wrote: >> >> Erica, any thoughts on only having default and making it an error in a >> future version of Swift like was discussed on this thread? The idea seems to >> have a few supporters. >> >>> On 16 Jun 2017, at 15:33, Erica Sadun via swift-evolution >>> <swift-evolution@swift.org <mailto:swift-evolution@swift.org>> wrote: >>> >>> >>>> On Jun 14, 2017, at 11:46 PM, Dave Abrahams via swift-evolution >>>> <swift-evolution@swift.org <mailto:swift-evolution@swift.org>> wrote: >>>> >>>> >>>> on Wed Jun 14 2017, Chris Lattner <swift-evolution@swift.org >>>> <mailto:swift-evolution@swift.org>> wrote: >>>> >>>>>> On Jun 14, 2017, at 10:11 AM, Erica Sadun via swift-evolution >>>>>> <swift-evolution@swift.org <mailto:swift-evolution@swift.org>> wrote: >>>>>> >>>>>> Some pals and I have been kicking an idea around about introducing >>>>>> better ways to support the compiler in protocol extensions. We want >>>>> >>>>>> to eliminate some hard-to-detect bugs. We've been brainstorming on >>>>>> how to do this without affecting backward compatibility and >>>>>> introducing a minimal impact on keywords. >>>>>> >>>>>> We'd love to know what you think of our idea, which is to introduce >>>>>> "role" keywords. Roles allow the compiler to automatically check the >>>>>> intended use of a extension member definition against its protocol >>>>>> declarations, and emit errors, warnings, and fixits as needed. We >>>>>> think it's a pretty straightforward approach that, if adopted, >>>>>> eliminates an entire category of bugs. >>>>>> >>>>>> The draft proposal is here: >>>>>> https://gist.github.com/erica/14283fe18254489c1498a7069b7760c4 >>>>>> <https://gist.github.com/erica/14283fe18254489c1498a7069b7760c4> >>>>>> <https://gist.github.com/erica/14283fe18254489c1498a7069b7760c4 >>>>>> <https://gist.github.com/erica/14283fe18254489c1498a7069b7760c4>> >>>>>> >>>>>> Thanks in advance for your thoughtful feedback, >>>>> >>>>> +1 on the idea of this. >>>> >>>> ditto. IMO it also makes the protocol extension much more expressive >>>> and easy to read. >>>> >>>> -- >>>> -Dave >>> >>> >>> Pull request: https://github.com/apple/swift-evolution/pull/724 >>> <https://github.com/apple/swift-evolution/pull/724> >>> >>> -- E >>> >>> _______________________________________________ >>> swift-evolution mailing list >>> swift-evolution@swift.org <mailto:swift-evolution@swift.org> >>> https://lists.swift.org/mailman/listinfo/swift-evolution >>> <https://lists.swift.org/mailman/listinfo/swift-evolution> >> >
_______________________________________________ swift-evolution mailing list swift-evolution@swift.org https://lists.swift.org/mailman/listinfo/swift-evolution