<div dir="ltr">Dear Marc,<div><br></div><div>I see what you are saying.  I compiled a small function without the library and it was 16K.  That's fine.  I also understand what you are talking about regarding the library.  I can pair that done.  So, the big thing is the separate compilation.  This way, I presume, I could compile any number of modules, compile them (somewhat) independently, and then combine them when needed without getting a lot of duplicate code.</div><div><br></div><div>I gather that the tranpoline framework is required in each module.  That should be okay.  Keeping it, and any other code that is similar across modules minimum is important.</div><div><br></div><div>Thanks!</div><div><br></div><div>Blake</div><div><br></div></div><div class="gmail_extra"><br><div class="gmail_quote">On Tue, Feb 10, 2015 at 9:16 PM, Marc Feeley <span dir="ltr"><<a href="mailto:feeley@iro.umontreal.ca" target="_blank">feeley@iro.umontreal.ca</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="auto"><div>Separate compilation is not yet fully supported, but it is on my TODO.</div><div><br></div><div>It takes 5 MB because all of the univ library is there (including eval, bignums, etc). A smart linker could bring this down a bit.  If you want a minimal library, write it yourself so that it only contains what you need.</div><span class="HOEnZb"><font color="#888888"><div><br></div><div>Marc<br><br><br></div></font></span><div><div class="h5"><div><br>On Feb 10, 2015, at 6:09 PM, Blake McBride <<a href="mailto:blake@mcbride.name" target="_blank">blake@mcbride.name</a>> wrote:<br><br></div><blockquote type="cite"><div><div dir="ltr">I updated (last update was a few days ago) and it now works.  There are two issues, however, as follows:<div><br></div><div>1.  The resulting JavaScript file on a two line program is 5.7 MB.  Is this correct?  </div><div><br></div><div>2.  How can several scheme files be compiled independently and then linked (combined)?</div><div><br></div><div>Thanks!</div><div><br></div><div>Blake</div><div><br></div><div class="gmail_extra"><br><div class="gmail_quote">On Tue, Feb 10, 2015 at 11:16 AM, Marc Feeley <span dir="ltr"><<a href="mailto:feeley@iro.umontreal.ca" target="_blank">feeley@iro.umontreal.ca</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span><br>
> On Feb 10, 2015, at 10:30 AM, Blake McBride <<a href="mailto:blake@mcbride.name" target="_blank">blake@mcbride.name</a>> wrote:<br>
><br>
</span><span>> Would really appreciate some help with this.  I'd really like to document and use the system but I am stuck.<br>
><br>
> Thanks.<br>
><br>
> Blake<br>
<br>
</span>I’m not sure what version of Gambit and univ-lib you are using, but there was a change in the naming convention in the generated code.  Initially “Gambit_” was used to prefix all generated names, but this did not work out well for languages where an initial capital letter is used for classes.  So in more recent version of Gambit, “gambit_” is used for global variables and functions, and “Gambit_” is used for classes.<br>
<br>
So you should call gambit_js2scm(…) instead of Gambit_js2scm(…).<br>
<span><font color="#888888"><br>
Marc<br>
<br>
</font></span></blockquote></div><br></div></div>
</div></blockquote></div></div></div></blockquote></div><br></div>