<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=""><blockquote type="cite" class="">On Mar 26, 2017, at 11:57 AM, David Sweeris via swift-evolution <<a href="mailto:swift-evolution@swift.org" class="">swift-evolution@swift.org</a>> wrote:<br class=""></blockquote><div><blockquote type="cite" class=""><br class="Apple-interchange-newline"><div class=""><div style="font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px;" class="">On Mar 26, 2017, at 08:50, David James via swift-evolution <<a href="mailto:swift-evolution@swift.org" class="">swift-evolution@swift.org</a>> wrote:<br class=""><br class=""></div><blockquote type="cite" style="font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px;" class=""><div class=""><div class="">• What is your evaluation of the proposal?<br class=""></div></div><blockquote class="" style="margin: 0px 0px 0px 40px; border: none; padding: 0px;"><div class=""><div class="">-1 as written (see below)</div></div></blockquote><div class=""><div class=""><br class=""></div><div class="">• Is the problem being addressed significant enough to warrant a change to Swift?<br class=""></div></div><blockquote class="" style="margin: 0px 0px 0px 40px; border: none; padding: 0px;"><div class=""><div class="">Not as written</div></div></blockquote><div class=""><div class=""><br class=""></div><div class="">• Does this proposal fit well with the feel and direction of Swift?<br class=""></div></div><blockquote class="" style="margin: 0px 0px 0px 40px; border: none; padding: 0px;"><div class=""><div class="">It does in terms of apparent simplicity, but not in terms of practicality. I like to think of Swift as a practical language that does not sacrifice utility for apparent simplicity.</div></div><div class=""><br class=""></div></blockquote><div class=""><div class="">• If you have used other languages or libraries with a similar feature, how do you feel that this proposal compares to those?</div></div><blockquote class="" style="margin: 0px 0px 0px 40px; border: none; padding: 0px;"><div class=""><div class="">Can’t be compared. Swift has already set a precedent by making “private” mean something non-traditional (pre SE-0025), and I think it was a good decision, taking us away from the idea that private is only useful with parent inheritance structures. </div></div></blockquote><div class=""><div class=""><br class=""></div><div class="">• How much effort did you put into your review? A glance, a quick reading, or an in-depth study?</div></div><blockquote class="" style="margin: 0px 0px 0px 40px; border: none; padding: 0px;"><div class="">Have been following it since SE-0025, the aftermath, extensive experience using the modifiers in framework code I write and reading all related threads on SE.</div></blockquote><div class=""><br class=""></div><div class="">***</div><div class=""><br class=""></div>I propose instead that we revise to use Alternative #3, per Vladimir’s comment and revision.<div class=""><div class=""><br class=""></div><div class="">Revised version:</div><div class=""><br class=""></div><div class=""><b class="">“3. Revert<span class="Apple-converted-space"> </span><font face="Courier New" class="">private</font><span class="Apple-converted-space"> </span>to be file-based and introduce the scope-based access level under a new name (e.g.:<span class="Apple-converted-space"> </span><font face="Courier New" class="">scoped</font>,<span class="Apple-converted-space"> </span><font face="Courier New" class="">local</font>, etc), provided that the scope-based access modifier is not used at the top level of the file.” </b></div><div class="">(addendum via Vladimir’s revised comment)</div></div></blockquote><br style="font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px;" class=""><div style="font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px;" class="">Yeah,<span class="Apple-converted-space"> </span><span style="background-color: rgba(255, 255, 255, 0);" class="">within reason, </span>I couldn't care less how "private"/"fileprivate" are<span class="Apple-converted-space"> </span><i class="">spelled</i>. What I'm against is removing the<span class="Apple-converted-space"> </span><i class="">functionality</i>of the current "private" without simultaneously providing a semantically equivalent replacement.</div></div></blockquote></div><br class=""><div class="">I’ll second that. Don’t care what the scoped access modifier is called, as long as there is one.</div><div class=""><br class=""></div><div class="">Charles</div><div class=""><br class=""></div></body></html>