<html><head><meta http-equiv="Content-Type" content="text/html charset=utf-8"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class=""><div>Thank you for you comment, Xiaodi.</div><div><br class=""></div><div>I understand the disappointment, but imho this proposal is quite different from the ideas that have been rejected, and I hope to be able to convey that standpoint:</div><div><br class=""><blockquote type="cite" class=""><div class=""><div dir="ltr" class=""><div class="">One solution to the problem is to remove the use of access modifiers as a shorthand in front of extensions. It was proposed, reviewed, and rejected:</div><div class=""><a href="https://github.com/apple/swift-evolution/blob/master/proposals/0119-extensions-access-modifiers.md" class="">https://github.com/apple/swift-evolution/blob/master/proposals/0119-extensions-access-modifiers.md</a></div></div></div></blockquote><div>The rational for the rejection was&nbsp;that this proposal would eliminate&nbsp;<i class="">the useful ability to apply access control to a batch of methods and properties.</i></div><div>This can't be a motivation to discard nested extensions — it does not try to remove batching of access control, but rather extend that ability to be used for stored properties.</div><div><br class=""></div><blockquote type="cite" class=""><div dir="ltr" class=""><div class="">I tried to follow up with a much milder proposal to change the rules surrounding access modifiers. It was discussed here:</div><div class=""><a href="https://lists.swift.org/pipermail/swift-evolution/Week-of-Mon-20160718/024588.html" class="">https://lists.swift.org/pipermail/swift-evolution/Week-of-Mon-20160718/024588.html</a><br class=""></div><div class=""><br class=""></div><div class="">The PR was here, but rejected for review by the core team:</div><div class=""><a href="https://github.com/apple/swift-evolution/pull/438/files" class="">https://github.com/apple/swift-evolution/pull/438/files</a><br class=""></div></div></blockquote>I don't think this has much similarity either:</div><div>I'm not trying to change extensions itself, but rather leverage their existing capabilities in a bigger context.</div><div><br class=""></div><div>To make it clear:</div><div>A private extension that is nested would would be completely inaccessible (and therefor useless) unless you have at least one member in it whose access level is set to internal (or more accessible).</div></body></html>