<div dir="ltr"><div>If a submodule doesn&#39;t provide self contained functionality then it shouldn&#39;t be a submodule, and if it does then it might as well be a separate module. I think submodules would discourage small granular module development and composition at a larger scale, it would discourage making a clean public interface for the module which might make them more reusable and testable. Also of course it would mean more keywords/syntax/classifiers to manage it which makes things more complicated (unnecessarily in my view).<br><br></div><div>But I haven&#39;t really thought much about potential advantages... what are they?<br><div><br></div></div><div><br><div class="gmail_quote"><div dir="ltr">On Tue, 27 Sep 2016 at 19:55 Sean Heber via swift-evolution &lt;<a href="mailto:swift-evolution@swift.org">swift-evolution@swift.org</a>&gt; wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">This was all already argued about *extensively*. As in.. for weeks and weeks.<br>
<br>
For the record, I still think things are mis-named, but that ship has sailed. IMO the existing “fileprivate” should have been “internal” and existing “internal” should have been “external”. But oh well.<br>
<br>
l8r<br>
Sean<br>
<br>
<br>
&gt; On Sep 27, 2016, at 1:40 PM, Nevin Brackett-Rozinsky via swift-evolution &lt;<a href="mailto:swift-evolution@swift.org" target="_blank">swift-evolution@swift.org</a>&gt; wrote:<br>
&gt;<br>
&gt; In another thread (no link because we’re not on a forum ;-) the idea was raised that in the future, if and when Swift starts using submodules, the “fileprivate” scope could be turned into “submodule” scope.<br>
&gt;<br>
&gt; By default every file would constitute its own submodule, and developers could choose to put several files together into a submodule if they wish.<br>
&gt;<br>
&gt; Perhaps there may be a shorter word that nicely implies “submodule scope”.<br>
&gt;<br>
&gt; Nevin<br>
&gt;<br>
&gt;<br>
&gt;<br>
&gt; On Tue, Sep 27, 2016 at 12:20 PM, Jeremy Pereira via swift-evolution &lt;<a href="mailto:swift-evolution@swift.org" target="_blank">swift-evolution@swift.org</a>&gt; wrote:<br>
&gt;<br>
&gt; &gt; On 27 Sep 2016, at 14:20, Zach Waldowski via swift-evolution &lt;<a href="mailto:swift-evolution@swift.org" target="_blank">swift-evolution@swift.org</a>&gt; wrote:<br>
&gt; &gt;<br>
&gt; &gt;<br>
&gt; &gt;<br>
&gt; &gt;<br>
&gt; &gt; On Tue, Sep 27, 2016, at 01:34 AM, Jeremy Pereira via swift-evolution<br>
&gt; &gt; wrote:<br>
&gt; &gt;&gt; As for dropping file private, why? You don’t have to use it if you don’t<br>
&gt; &gt;&gt; want to, so it’s not hurting you. On the other hand, I can use it when I<br>
&gt; &gt;&gt; deem it to be the right thing to do.<br>
&gt; &gt;<br>
&gt; &gt; I&#39;ll politely disagree and point out you *must* use fileprivate in order<br>
&gt; &gt; to get what it provides. It&#39;s unavoidable in that sense.<br>
&gt;<br>
&gt; That’s not the point I was making. It was mooted that fileprivate should be dropped altogether leading to not having any means of specifying file scope at all. I was simply pointing out that people who don’t like file scope already have the option of not using fileprivate.<br>
&gt;<br>
&gt;<br>
&gt; _______________________________________________<br>
&gt; swift-evolution mailing list<br>
&gt; <a href="mailto:swift-evolution@swift.org" target="_blank">swift-evolution@swift.org</a><br>
&gt; <a href="https://lists.swift.org/mailman/listinfo/swift-evolution" rel="noreferrer" target="_blank">https://lists.swift.org/mailman/listinfo/swift-evolution</a><br>
&gt;<br>
&gt; _______________________________________________<br>
&gt; swift-evolution mailing list<br>
&gt; <a href="mailto:swift-evolution@swift.org" target="_blank">swift-evolution@swift.org</a><br>
&gt; <a href="https://lists.swift.org/mailman/listinfo/swift-evolution" rel="noreferrer" target="_blank">https://lists.swift.org/mailman/listinfo/swift-evolution</a><br>
<br>
_______________________________________________<br>
swift-evolution mailing list<br>
<a href="mailto:swift-evolution@swift.org" target="_blank">swift-evolution@swift.org</a><br>
<a href="https://lists.swift.org/mailman/listinfo/swift-evolution" rel="noreferrer" target="_blank">https://lists.swift.org/mailman/listinfo/swift-evolution</a><br>
</blockquote></div></div></div>