<div dir="ltr"><span style="color:rgb(80,0,80)">&gt; WAIT!  Let&#39;s consider one final option.  *Removal* of authorName.  When I</span><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-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
<div class="im">
&gt; look at senders I see users that are mostly app-specific.  Etoys, saving a<br>
&gt; TextStyle or Postscript object...  That seems pretty weak to me for<br>
&gt; inclusion in a core image plus the introduction of a new SystemAuthor class.<br>
&gt;<br>
&gt; What do you guys think?<br>
<br>
</div>I would not cry if we removed authorName, or made it simply an alias<br>
for authorInitials. I do want it a separate class though, because it&#39;s<br>
a separate entity. It&#39;s not just a string, after all: it&#39;s a string<br>
with setup logic, and asking the user for stuff. I&#39;ve made classes for<br>
less than that, many times.<br></blockquote><div><br></div><div>&quot;Separate entity&quot;, alone, is not enough.  I used to develop code this way; &quot;ultimate objects&quot; that matched the real-life semantic structure.</div>
<div><br></div><div>So if I had a Person object with a &#39;name&#39;, I would *never even consider&quot; letting its &#39;name&#39; be a simple String, it had to be a first-class Name object with #first, #middle, #last, and printing methods, etc.</div>
<div><br></div><div>Then, one day, I found myself with all of this &quot;stuff&quot; that wasn&#39;t really needed.  More methods, more classes, more concepts, more layers, more reads by the database.  NONE of which, is truly needed.  It was &quot;heavyweight&quot; instead of TSTTCPW.</div>
<div><br></div><div>Since then, I&#39;ve realized, it&#39;s perfectly fine to not have a first-class object if all you need is a String.</div><div><br></div><div><br></div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">

<span class=""><font color="#888888"><br>
frank<br>
</font></span><div class=""><div class="h5"><br>
&gt; On Fri, Nov 22, 2013 at 10:09 AM, Frank Shearar &lt;<a href="mailto:frank.shearar@gmail.com">frank.shearar@gmail.com</a>&gt;<br>
&gt; wrote:<br>
&gt;&gt;<br>
&gt;&gt; On 21 November 2013 23:05, Chris Muller &lt;<a href="mailto:asqueaker@gmail.com">asqueaker@gmail.com</a>&gt; wrote:<br>
&gt;&gt; &gt; Back when Levente approached this, we had a detailed discussion about<br>
&gt;&gt; &gt; it.  I think we should all go back and read that before introducing a<br>
&gt;&gt; &gt; SystemAuthor class.<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; Personally, I wouldn&#39;t mind just having<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt;    Smalltalk authorInitials  &quot;answers a String&quot;<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; until we decide we need to support multiple concurrent Author objects<br>
&gt;&gt; &gt; with more than just name and initials..<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; And this makes sense anyway -- Smalltalk&#39;s current #author.<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; I struggle with having a whole class (SystemAuthor) when we cannot<br>
&gt;&gt; &gt; take proper advantage of it and only really need one String field at<br>
&gt;&gt; &gt; this time, not a heavy-weight, value-holder singleton.<br>
&gt;&gt;<br>
&gt;&gt; We cannot take proper advantage of it because it doesn&#39;t exist yet :)<br>
&gt;&gt;<br>
&gt;&gt; I&#39;d rather waste an entire class and kill Utilities, than have<br>
&gt;&gt; Utilities continually stick a spanner in the more important objective<br>
&gt;&gt; of modularity.<br>
&gt;&gt;<br>
&gt;&gt; First Utilities, then the world!<br>
&gt;&gt;<br>
&gt;&gt; frank<br>
&gt;&gt;<br>
&gt;&gt; &gt; On Thu, Nov 21, 2013 at 4:33 PM, Frank Shearar &lt;<a href="mailto:frank.shearar@gmail.com">frank.shearar@gmail.com</a>&gt;<br>
&gt;&gt; &gt; wrote:<br>
&gt;&gt; &gt;&gt; On 21 November 2013 21:20,  &lt;<a href="mailto:commits@source.squeak.org">commits@source.squeak.org</a>&gt; wrote:<br>
&gt;&gt; &gt;&gt;&gt; Frank Shearar uploaded a new version of MonticelloConfigurations to<br>
&gt;&gt; &gt;&gt;&gt; project The Trunk:<br>
&gt;&gt; &gt;&gt;&gt; <a href="http://source.squeak.org/trunk/MonticelloConfigurations-fbs.118.mcz" target="_blank">http://source.squeak.org/trunk/MonticelloConfigurations-fbs.118.mcz</a><br>
&gt;&gt; &gt;&gt;&gt;<br>
&gt;&gt; &gt;&gt;&gt; ==================== Summary ====================<br>
&gt;&gt; &gt;&gt;&gt;<br>
&gt;&gt; &gt;&gt;&gt; Name: MonticelloConfigurations-fbs.118<br>
&gt;&gt; &gt;&gt;&gt; Author: fbs<br>
&gt;&gt; &gt;&gt;&gt; Time: 21 November 2013, 9:20:19.085 pm<br>
&gt;&gt; &gt;&gt;&gt; UUID: aaba44a1-8cfd-4147-8d94-69d5fc5ac571<br>
&gt;&gt; &gt;&gt;&gt; Ancestors: MonticelloConfigurations-cmm.117<br>
&gt;&gt; &gt;&gt;&gt;<br>
&gt;&gt; &gt;&gt;&gt; Move the #upgradeIsMerge preference to MCConfiguration.<br>
&gt;&gt; &gt;&gt;&gt;<br>
&gt;&gt; &gt;&gt;&gt; =============== Diff against MonticelloConfigurations-cmm.117<br>
&gt;&gt; &gt;&gt;&gt; ===============<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt; Just by the way, MonticelloConfigurations depends on System for one<br>
&gt;&gt; &gt;&gt; thing only now: Utilities&#39; author stuff. I&#39;m knocking up a completely<br>
&gt;&gt; &gt;&gt; lame minimal mimic-existing-stuff SystemAuthor that I will hopefully<br>
&gt;&gt; &gt;&gt; finish tomorrow. I plan to sever this dependency, and then remove all<br>
&gt;&gt; &gt;&gt; the references to Utilities authorName/Initials with SystemAuthor<br>
&gt;&gt; &gt;&gt; current, and then we can think about any other stuff we might do with<br>
&gt;&gt; &gt;&gt; this.<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt; frank<br>
</div></div></blockquote></div><br></div></div>