<div dir="ltr"><br><div class="gmail_extra"><br><br><div class="gmail_quote">On Fri, Jan 11, 2013 at 8:13 PM, Asumu Takikawa <span dir="ltr">&lt;<a href="mailto:asumu@ccs.neu.edu" target="_blank">asumu@ccs.neu.edu</a>&gt;</span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="im">On 2013-01-11 15:39:08 -0600, Robby Findler wrote:<br>
&gt;    I think it would be great if you were to find backwards-compatible<br>
&gt;    ways to bring these two a little bit closer. Making them use the<br>
&gt;    same internal date struct, for example, would be a great thing.<br>
<br>
</div>I wrote a patch to make both of these use the same structure, attached<br>
to the e-mail. It seems to pass all of the srfi-19 and date tests (with<br>
some tests changed where appropriate). Does it look alright?<br>
<br></blockquote><div><br></div><div style>(The diff shows all of the tests changing). Are the tests for exported functions? If so, that sound bad.</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

It turns out there was one (sort of) good reason for SRFI-19 to define<br>
its own struct type: it used mutation for several functions. Racket&#39;s<br>
date/date* are immutable. I just changed these to use functional update.<br>
<br></blockquote><div><br></div><div style>Was the mutation exposed via the library?</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Another thing: when a string is converted to a date, it&#39;s possible that<br>
the format string only has time-of-day but no date specification.<br>
Previously, this produced a srfi/19 date with &#39;#t&#39;s but I&#39;ve now<br>
defaulted it to the start day of the Unix epoch (arbitrarily).<br><br></blockquote><div style><br></div><div style>That sounds like a backwards incompatible change (in that some programs that could use srfi/19 would get #f out of selectors that now get something else).</div>
<div style><br></div><div style>Could a srfi/19 date be a union of two structs, where one represented a time only?</div><div style><br></div><div style>Robby</div><div style> </div></div><br></div></div>