<div dir="ltr">While I agree that private/fileprivate didn't change much… I have to say that I wish we had simply kept private as is and ended up with private, internal, public, and open. It is more tricky to explain than it is worth.<div><br></div><div>TJ<br><div><br></div></div></div><div class="gmail_extra"><br><div class="gmail_quote">On Fri, Oct 7, 2016 at 6:56 PM, Jordan Rose via swift-evolution <span dir="ltr"><<a href="mailto:swift-evolution@swift.org" target="_blank">swift-evolution@swift.org</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div style="word-wrap:break-word"><span class=""><br><div><blockquote type="cite"><div>On Oct 7, 2016, at 15:15, William Sumner via swift-evolution <<a href="mailto:swift-evolution@swift.org" target="_blank">swift-evolution@swift.org</a>> wrote:</div><br class="m_-5758901710995888850Apple-interchange-newline"><div><div style="word-wrap:break-word"><br><div><blockquote type="cite"><div>On Oct 7, 2016, at 3:05 PM, Zach Waldowski via swift-evolution <<a href="mailto:swift-evolution@swift.org" target="_blank">swift-evolution@swift.org</a>> wrote:</div><br class="m_-5758901710995888850Apple-interchange-newline"><div>
<div><div style="font-family:Arial">I third this sentiment. fileprivate is a nice idea and very clearly has its uses (which is why the proposal got traction in the first place), but when combined with the other access levels, the language feature as a whole feels arbitrary. In practical use, files that I felt were nicely encapsulated and hiding implementation details are now a scattered mix of access levels, adding cognitive load and making the code look unorganized for having the gall to use extensions to split up functionality.<br></div>
<div style="font-family:Arial"><br></div>
<div id="m_-5758901710995888850sig40804545"><div class="m_-5758901710995888850signature"><span class="m_-5758901710995888850font" style="font-family:arial,sans-serif,sans-serif">Sincerely,</span><span class="m_-5758901710995888850font" style="font-family:arial,sans-serif,sans-serif"></span><br></div>
<div class="m_-5758901710995888850signature"><span class="m_-5758901710995888850font" style="font-family:arial,sans-serif,sans-serif"> Zachary Waldowski</span><span class="m_-5758901710995888850font" style="font-family:arial,sans-serif,sans-serif"></span><br></div>
<div class="m_-5758901710995888850signature"><span class="m_-5758901710995888850font" style="font-family:arial,sans-serif,sans-serif"> </span><span class="m_-5758901710995888850font" style="font-family:arial,sans-serif,sans-serif"><a href="mailto:zach@waldowski.me" target="_blank">zach@waldowski.me</a></span><br></div>
</div>
</div></div></blockquote><br></div><div><div>Beyond the textual change of using a different modifier name, I don’t see how the encapsulation and organization of code could be affected. Really, there’s not much point in rehashing prior discussion of SE-0025 unless there’s a previously unconsidered angle.</div></div></div></div></blockquote><br></div></span><div>I <b>strongly</b> agree with this sentiment. SE-0025 was <i>very</i> heavily discussed, and while many people were not satisfied with the solution we went with (including me!), it was what the core team and community converged on. I don't expect us to change access control again until and unless we decide to change the model in some way, and even then I think we'll want to go through extra effort to maintain compatibility with Swift 3. As has been mentioned repeatedly, the bar for source-breaking changes is much higher than it was in the first few months of swift-evolution.</div><div><br></div><div>I actually consider it very lucky that most of our changes so far have been fairly non-controversial. Everybody has a different idea of what would make Swift a better language, and all of us well-meaning. But when those ideas conflict, some group is going to end up unhappy. I'm actually very glad that (a) we haven't had too many of these cases, and (b) even when we have, people have been able to accept it and move on to contributing to the next issue.</div><br><div>Jordan</div></div><br>______________________________<wbr>_________________<br>
swift-evolution mailing list<br>
<a href="mailto:swift-evolution@swift.org">swift-evolution@swift.org</a><br>
<a href="https://lists.swift.org/mailman/listinfo/swift-evolution" rel="noreferrer" target="_blank">https://lists.swift.org/<wbr>mailman/listinfo/swift-<wbr>evolution</a><br>
<br></blockquote></div><br></div>