<div dir="ltr"><br><div class="gmail_extra"><br><br><div class="gmail_quote">On Wed, Oct 30, 2013 at 10:32 AM, Konrad Hinsen <span dir="ltr"><<a href="mailto:konrad.hinsen@fastmail.net" target="_blank">konrad.hinsen@fastmail.net</a>></span> wrote:<br>

<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Laurent writes:<br>
<br>
 > Pushed: <a href="https://github.com/Metaxal/measures#4-dimensions-and-contracts" target="_blank">https://github.com/Metaxal/measures#4-dimensions-and-contracts</a><br>
<br>
This is getting better and better every day! The use of contracts looks<br>
like the best way to do run-time dimensional analysis.<br></blockquote><div><br></div><div>Thanks, that's mainly thanks to your feedback.<br><br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">



My only remaining wish is to be able to define my own set of units and<br>
prefixes, i.e. factor out the second half of convert.rkt. Unfortunately<br>
this doesn't look straightforward, because it must be possible to<br>
use multiple unit systems in the same Racket instance. It might actually<br>
be best to have a specific module per unit system, as there are not<br>
so many useful ones anyway. Each client module would then require the<br>
module with the unit system it needs, i.e. measures/si or measures/atomic.<br></blockquote><div><br></div><div>The units are now in a separate file but I did not try to build another base.<br></div><div>But at least it's possible to require only measures/measure and measures/convert <br>

</div><div>and define one's own set of dimensions and units.<br></div><div><br></div><div>I also added the list of chemical elements (just for fun), parsed automatically from Wikipedia's page:<br><a href="https://github.com/Metaxal/measures#5-chemical-elements">https://github.com/Metaxal/measures#5-chemical-elements</a><br>

<br></div><div>Laurent <br></div></div><br></div></div>