<div dir="ltr">On Fri, Feb 24, 2017 at 3:32 AM, Joanna Carter via swift-evolution <span dir="ltr"><<a href="mailto:swift-evolution@swift.org" target="_blank">swift-evolution@swift.org</a>></span> wrote:<br><div class="gmail_extra"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex"><span class="gmail-"><br>
> Le 23 févr. 2017 à 20:48, Matthew Johnson <<a href="mailto:matthew@anandabits.com">matthew@anandabits.com</a>> a écrit :<br>
><br>
> Sometimes APIs are used internally in production while eventually planned for public visibility. New features in Apple’s frameworks often start life this way.<br>
<br>
</span>Hmmm. In my experience, if I wanted to experiment with something in the context of the whole project, I would tend to create a branch of the project in source control, experiment and either merge the branch if successful or delete it if not.<br>
<span class="gmail-"><br>
> I don’t have a strong feeling about this particular capability. I’m just trying to state the rationale as I understand it.<br>
<br>
</span>Pease don't think I am criticising your understanding, it's just that such a rationale doesn't seem very, well, rational :-)</blockquote><div><br></div><div>It is a useful generalization of an absolutely obligatory feature for new `private`. Consider the following:</div><div><br></div><div>```</div><div>private class Foo {</div><div> private class Bar {</div><div> /* blank */ class Baz { }</div><div> }</div><div>}</div><div>```</div><div><br></div><div>What access modifier can be used in place of `blank` to make `Foo.Bar.Baz` have the same visibility as `Foo.Bar`? Note that `private` inside the type is more restrictive than `private` in the declaration of the type; the precise visibility of `Foo.Bar` is not expressible inside `Foo.Bar` itself. To allow `Foo.Bar.Baz` to be visible everywhere that `Foo.Bar` is visible, we must allow `blank` to be replaced by a modifier other than `private`.</div><div><br></div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex"><div class="gmail-HOEnZb"><div class="gmail-h5">
--<br>
Joanna Carter<br>
Carter Consulting<br>
<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>
</div></div></blockquote></div><br></div></div>