<div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote">On Mon, Sep 15, 2014 at 9:51 AM, Bert Freudenberg <span dir="ltr">&lt;<a href="mailto:bert@freudenbergs.de" target="_blank">bert@freudenbergs.de</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div style="word-wrap:break-word"><br><div><span class=""><div>On 15.09.2014, at 18:10, Chris Cunningham &lt;<a href="mailto:cunningham.cb@gmail.com" target="_blank">cunningham.cb@gmail.com</a>&gt; wrote:</div><br></span><blockquote type="cite"><div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><span class="">On Sun, Sep 14, 2014 at 10:03 AM, Bert Freudenberg <span dir="ltr">&lt;<a href="mailto:bert@freudenbergs.de" target="_blank">bert@freudenbergs.de</a>&gt;</span> wrote:<br></span><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 style="word-wrap:break-word"><div><br><div><span class=""><div>On 14.09.2014, at 07:46, Chris Cunningham &lt;<a href="mailto:cunningham.cb@gmail.com" target="_blank">cunningham.cb@gmail.com</a>&gt; wrote:</div><br></span><span class=""><blockquote type="cite"><div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><div>This allows the introduction of GenericMonth and GenericYear, so that we CAN do things like</div><div>   DateAndTime now + 4 months</div><div>This &#39;GenericMonth&#39; simple holds the number of months that you want to add (or subtract), and then does the appropriate addition of days based on the DateAndTime.  It handles different sizes of months, and leap years, just fine.  SImilarly for GenericYear.</div></div></div></div></blockquote></span></div><div><br></div></div><span class=""><div>This sounds surprisingly reasonable to me ;-)</div><div><br></div><div>I love using Squeak interactively, and these messages appear to do &quot;what I&#39;d expect&quot;.</div><div><br></div><div>The only objection I&#39;d have would be that it&#39;s not general enough: if you rolled GenericMonth and GenericYear into one and added in a regular duration, we could get something reasonable out of an expression like (1 year + 1 month + 1 week + 1 day).</div></span></div></blockquote><span class=""><div><br></div><div>That would be neat, but not straight-forward.  For instance, 1 month + 1 day is no necessarily the same as 1 day + 1 month!  At least, not with the expectations given before.  Specifically:<br></div><div><br></div><div>August 30th + 1 month + 1 day = October 1st.</div><div>August 30th + 1 day + 1 month = September 30th.</div><div><br></div><div>Similarly, I think you can run into trouble with ordering of years and months (around Leap years, mainly), but I haven&#39;t worked that out yet.</div><div><br></div><div>Maybe a third type of duration - that can take a sequence of additive (subtractive) durations, and apply them together later.</div></span></div></div></div></blockquote><div><br></div>You&#39;re right, that&#39;s how it should work.</div><span class=""><div><br></div></span></div></blockquote><div>Do you have a proposal for what to call this thing?  I&#39;d be likely to call it something like &#39;SequenceOfDurations&#39;.  Which I&#39;m not really fond of.</div><div>-cbc</div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div style="word-wrap:break-word"><span class=""><div><blockquote type="cite"><div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><div>But maybe I&#39;m missing a point - what would you want to get our of (1 year + 1 month + 1 week + 1 day)?  What questions would you ask of such a thing?  Remember, once you get into months and years, they are unspecific until given the context of a real month and or year.  A month is anywhere from 28 to 31 days (and possibly an extra second or similar); a year is 365 or 366 days.</div></div></div></div></blockquote><br></div></span><div>I guess it would just be for aesthetic reasons, ensuring that (a + b) + c  = a + (b + c).</div><span class="HOEnZb"><font color="#888888"><br><div>
<span style="border-collapse:separate;border-spacing:0px;font-family:&#39;Lucida Grande&#39;;font-size:12px"><div style="word-wrap:break-word"><div style="font-family:Helvetica"><span style="font-family:Helvetica">- Bert -</span></div><br></div></span><br>

</div>
<br></font></span></div><br><br>
<br></blockquote></div><br></div></div>