<div dir="ltr"><div><div><div><div><div><div><div><div>I note that most references to FileList are for registering/unregistering a specific tool as a service for a specific fileType...</div><div>So the goal is to make file services modular/pluggable/extendable.</div><div>What I don't understand is that FileList seems to duplicate FileServices code (see for example implementors of #registerFileReader)...</div><div>And that there is a random mixture of usage:</div><div><br></div><div>    ChangeList class>>initialize<br>        FileList registerFileReader: self<br><div><br></div>    ChangeSet class>>initialize<br>        "ChangeSet initialize"<br>        AllChangeSets == nil ifTrue:<br>            [AllChangeSets := OrderedCollection new].<br>        self gatherChangeSets.<br>        FileServices registerFileReader: self.<br><br></div>What do you suggest instead? Who should survive?<br><br></div>P.S.: it seems that we abused a bit of living system metaphor.<br>It's like we wanted to create diversity in order to multiply the chances of squeak to survive ;)<br></div>Unfortunately, natural selection of code doesn't obey fair rules:</div><div>- code tends to bloat and complexify over years</div><div>  that could be like our cells that gradually degenerate...<br></div>- but the worse code (the most complex) tend to survive longer.<br></div>  this is because it becomes more and more complex to change it without breaking features.<br></div>  and breaking features is frowned upon...<br></div></div><div><br></div><div>In biology, the immune system also help eliminating own degenerated cells.</div><div>I don't see anything equivalent in Squeak.<br></div>So the whole organism is in danger if we don't help the bad cells to die ;)<br></div><div class="gmail_extra"><br><div class="gmail_quote">2017-10-05 20:04 GMT+02:00 tim Rowledge <span dir="ltr"><<a href="mailto:tim@rowledge.org" target="_blank">tim@rowledge.org</a>></span>:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class=""><br>
> On 04-10-2017, at 6:48 PM, Bob Arning <<a href="mailto:arning315@comcast.net">arning315@comcast.net</a>> wrote:<br>
>><br>
<br>
> Well, the whole point is to provide a view of the contents of a file which you can read, edit and save. The rest is just how to get that content in the first place. So, it's a StringHolder with some extra buttons attached.<br>
<br>
</span>Ah, right, as previously mentioned a case of is-a or has-a. I much prefer has-a myself.<br>
<span class=""><br>
<br>
tim<br>
--<br>
tim Rowledge; <a href="mailto:tim@rowledge.org">tim@rowledge.org</a>; <a href="http://www.rowledge.org/tim" rel="noreferrer" target="_blank">http://www.rowledge.org/tim</a><br>
</span>Oxymorons: New classic<br>
<br>
<br>
<br>
</blockquote></div><br></div>