[swift-evolution] Proposal: Split extensions into implementing methods and adding static functions Was: [swift-evolution-announce] [Review] SE-0164: Remove final support in protocol extensions

Brent Royal-Gordon brent at architechies.com
Wed May 3 03:09:03 CDT 2017

> On May 3, 2017, at 12:25 AM, Xiaodi Wu via swift-evolution <swift-evolution at swift.org> wrote:
> I definitely agree that it's a feature that _can_ be used unwisely, but the fact remains that it _is_ used pervasively in the standard library, and deliberately

I'm not so sure that's true. Which standard library protocols intentionally depend upon certain parts to not be overridable? Are they so pervasive that we wouldn't prefer to just mark those members that need it with a `final` keyword? If John McCall woke up tomorrow with some genius idea of how to make extension methods overridable with zero overhead, would we choose to keep the current design? 

That's not to say the proposal at hand is a good idea, but I think you're overselling the current design.

Brent Royal-Gordon

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.swift.org/pipermail/swift-evolution/attachments/20170503/e0d54461/attachment.html>

More information about the swift-evolution mailing list