<div dir="ltr">Would random testing help avoid some of the pain of writing a good initial set of tests?<div><br></div><div>Robby</div></div><div class="gmail_extra"><br><br><div class="gmail_quote">On Mon, Jan 28, 2013 at 7:18 PM, Matthew Flatt <span dir="ltr">&lt;<a href="mailto:mflatt@cs.utah.edu" target="_blank">mflatt@cs.utah.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">At Sat, 29 Dec 2012 14:05:08 +0300, Michael Filonenko wrote:<br>
&gt; I have prepared a new version of the patch (attached).<br>
<br>
</div>Thanks!<br>
<br>
I&#39;ve merged your patch into the git repo, with some changes:<br>
<br>
 * Abstracted more to both reduce code duplication and make the<br>
   &quot;product line&quot; variation easier to read and write.<br>
<br>
 * Renamed a few operations to consistently use &quot;extfl&quot;, and added<br>
   `extfl-&gt;inexact&#39; and `extfl-available?&#39;.<br>
<br>
 * Changed the module organization, so that the extflonum bindings are<br>
   always available, and operations raise `exn:fail:unsupported&#39; when<br>
   they are not supported. The operations `extflonum?&#39;, `extflvector?&#39;,<br>
   and `extflonum-available?&#39; always work.<br>
<br>
 * Adjusted the reader to more completely isolate extflonums (e.g., no<br>
   complex numbers with an extflonum part).<br>
<br>
 * Changed &quot;sconfig.h&quot; and &quot;scheme.h&quot; to infer when extflonums can be<br>
   supported (see also the new note in &quot;src/README&quot;), and added<br>
   `--disable-extflonum&#39; to `configure&#39;.<br>
<br>
 * Reorganized and expanded the documentation.<br>
<br>
I ran out of steam before trying a MinGW compile, so that&#39;s almost<br>
certainly broken. Meanwhile, I have some thoughts on making an MSVC<br>
build work with a MinGW-compiled support DLL (more later).<br>
<br>
Unboxing of locally-bound extflonums is still not implemented, but I<br>
think it&#39;s probably not too far away. If you want to give that a try, I<br>
recommend continuing in the direction of threading an `extfl&#39; flag<br>
through the JIT, instead of duplicating functions.<br>
<br>
Finally, I think the test suite probably needs a lot more tests to<br>
cover the extflonum operations. Most of the flonum tests are in<br>
&quot;optimize.rktl&quot;, and I think it would make sense to add similar tests<br>
there for extflonum operations --- guarded by `(when<br>
(extflonum-available?) ...)&#39;.<br>
<div class="HOEnZb"><div class="h5"><br>
_________________________<br>
  Racket Developers list:<br>
  <a href="http://lists.racket-lang.org/dev" target="_blank">http://lists.racket-lang.org/dev</a><br>
</div></div></blockquote></div><br></div>