<br><div class="gmail_quote">On Wed, Sep 2, 2009 at 5:23 PM, Lee Spector <span dir="ltr">&lt;<a href="mailto:lspector@hampshire.edu">lspector@hampshire.edu</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<div class="im"><br>
On Sep 2, 2009, at 7:52 PM, Eli Barzilay wrote:<br>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
Compiling files will save you the compilation cost so if you run long<br>
processes there&#39;s no real difference.<br>
</blockquote>
<br></div>
Good -- that&#39;s what I thought and the same as compilation in CL, but I didn&#39;t know if there was some other reason for creating .zo files. In the case of my current project compilation takes less than a second and runtimes will often be hours, so it&#39;s not an issue.</blockquote>
<div><br>When you deliver the code via planet, the code gets compiled for you. <br> </div><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"><div class="im">

<br>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
You have the freedom -- you can even do a reader thing similar to the<br>
CL #+ -- but the default makes it harder to trip on these bugs (which<br>
can get very nasty).<br>
</blockquote>
<br></div>
Understood. Part of my attitude is probably just from being a newcomer and feeling, probably often out of ignorance, like it&#39;s harder to do some things I&#39;m used to doing in CL (e.g. in areas like writing macros with arbitrary expansions, using eval, and splitting code over multiple files without having to think about modules). In many such cases I&#39;m probably just wrong, but I do think there&#39;s more of a focus on safety in this community. This is probably for the good in most situations, particularly when people are developing large software systems that will be used by others, but it can also sometimes feel constraining, particularly when developing small experimental systems for one&#39;s own use.<font color="#888888"><br>
</font></blockquote><div><br>It seems that if you have taken the care to abstract your OS dependent code to separate OS specific modules (which all export the same module signature), than conditionally requiring the modules during compile time makes sense.<br>
<br>I&#39;ve hacked up a planet package to support this particular usage - if you are interested just load it via <br><br>(require (planet bzlib/os)) <br><br>Which will give you macros to conditionally requiring modules, provide modules, and evaluate arbitrary code. <br>
<br>See the package homepage for more details.<br><br>Cheers, <br>yc<br><br></div></div>