<div dir="ltr"><div><div>No, I don&#39;t think it&#39;s that rubbish. The categories are primarily for helping the user to classify/find things.<br>So that would mean that packages have to divorce from categories, like the Pharo team did.<br>
</div><div>I don&#39;t know, maybe it is necessary for proper packaging, but it&#39;s far from simple...<br></div><br></div>Maybe the kind of solution you are seeking is to split packages one level further like Pharo did.<br>
This way you can load only some kernel collections.<br></div><div class="gmail_extra"><br><br><div class="gmail_quote">2013/11/22 Frank Shearar <span dir="ltr">&lt;<a href="mailto:frank.shearar@gmail.com" target="_blank">frank.shearar@gmail.com</a>&gt;</span><br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="im">On 22 Nov 2013, at 16:59, Chris Muller &lt;<a href="mailto:asqueaker@gmail.com">asqueaker@gmail.com</a>&gt; wrote:<br>

<br>
&gt; You said there are already two places where it&#39;s used, right?  If<br>
&gt; there&#39;s even just ONE MORE place that pops up, we&#39;ll find that clearly<br>
&gt; Balloon (WTH?) is the wrong place for it.<br>
&gt;<br>
&gt;   <a href="http://www.codinghorror.com/blog/2013/07/rule-of-three.html" target="_blank">http://www.codinghorror.com/blog/2013/07/rule-of-three.html</a><br>
&gt;<br>
&gt; I think you should stay consistent in your statements about<br>
&gt; &quot;modularity.&quot;  It wraps a Dictionary, it supplies #at: for access.<br>
&gt; You said if it walks and quacks like a collection, it goes in<br>
&gt; Collections.<br>
<br>
</div>No, I said that was a rubbish reason for grouping things together :)<br>
<span class="HOEnZb"><font color="#888888"><br>
frank<br>
</font></span><div class="HOEnZb"><div class="h5"><br>
&gt; On Fri, Nov 22, 2013 at 4:58 AM, Frank Shearar &lt;<a href="mailto:frank.shearar@gmail.com">frank.shearar@gmail.com</a>&gt; wrote:<br>
&gt;&gt; On 22 November 2013 10:09, Tobias Pape &lt;<a href="mailto:Das.Linux@gmx.de">Das.Linux@gmx.de</a>&gt; wrote:<br>
&gt;&gt;&gt; On 22.11.2013, at 11:04, Frank Shearar &lt;<a href="mailto:frank.shearar@gmail.com">frank.shearar@gmail.com</a>&gt; wrote:<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; On 22 November 2013 01:03, David T. Lewis &lt;<a href="mailto:lewis@mail.msen.com">lewis@mail.msen.com</a>&gt; wrote:<br>
&gt;&gt;&gt;&gt;&gt; On Fri, Nov 22, 2013 at 01:31:37AM +0100, Levente Uzonyi wrote:<br>
&gt;&gt;&gt;&gt;&gt;&gt; On Thu, 21 Nov 2013, Chris Muller wrote:<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt; On Thu, Nov 21, 2013 at 4:51 PM, Frank Shearar &lt;<a href="mailto:frank.shearar@gmail.com">frank.shearar@gmail.com</a>&gt;<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt; wrote:<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; I&#39;m sorely tempted to move LRUCache to Balloon. It&#39;s in System at the<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; moment, making Balloon depend on System.<br>
&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;&gt;&gt; LRUCache is generic, so how about Collections?<br>
&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;&gt; It&#39;s generic, but the implementation is not generally useful.<br>
&gt;&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt; I don&#39;t see how the concept of a LRU cache is in any way related to Balloon.<br>
&gt;&gt;&gt;&gt;&gt; It seems to me that if it is useful enough to be included in the system at<br>
&gt;&gt;&gt;&gt;&gt; all, then it should live in a package category that reflects the actual meaning<br>
&gt;&gt;&gt;&gt;&gt; of the class.<br>
&gt;&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt;&gt; Suppose for the sake of argument that Balloon was being maintained as an<br>
&gt;&gt;&gt;&gt;&gt; external package outside of the trunk image. Suppose also that an LRU cache<br>
&gt;&gt;&gt;&gt;&gt; was something worth having in the trunk. What package would you put it in?<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; I would put it in its own package, called Cache. I anticipate heated<br>
&gt;&gt;&gt;&gt; discussion around yet another package with a single class.<br>
&gt;&gt;&gt;&gt;<br>
&gt;&gt;&gt;&gt; But really, LRUCache is _not_ generic, because _noone uses it_.<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; Yea, that&#39;s why Seaside implements its own…<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; &lt;/sarcasm&gt; &lt;!-- sorry --&gt;<br>
&gt;&gt;<br>
&gt;&gt; Meh. The fundamental problem I&#39;m trying to address is to tease these<br>
&gt;&gt; packages apart. If I make deliberate mistakes, and put LRUCache in<br>
&gt;&gt; Balloon only because that&#39;s the most basic user and doesn&#39;t add any<br>
&gt;&gt; additional dependencies, _that is a win_. It&#39;s one slightly less<br>
&gt;&gt; horrible dependency.<br>
&gt;&gt;<br>
&gt;&gt; If someone else takes umbrage at such a ridiculous idea, and makes a<br>
&gt;&gt; new package, or puts it in Collections, _and doesn&#39;t add a new<br>
&gt;&gt; ridiculous dependency_, then that&#39;s even better.<br>
&gt;&gt;<br>
&gt;&gt; No, LRUCache doesn&#39;t belong in Balloons. It may well be generally<br>
&gt;&gt; useful. But moving it there fixes a real problem. What I don&#39;t want is<br>
&gt;&gt; to be paralysed with discussions like &quot;but this is not theoretically<br>
&gt;&gt; perfect!&quot;.<br>
&gt;&gt;<br>
&gt;&gt; frank<br>
&gt;&gt;<br>
&gt;&gt;&gt; Best<br>
&gt;&gt;&gt;        -Tobias<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt;<br>
&gt;&gt;<br>
&gt;<br>
<br>
</div></div></blockquote></div><br></div>