<div dir="ltr">Many thanks to you all, (Mikel, Alvaro, Marc and Dirk, for all the comments and explanations. That's really interesting to me.<div><div>I'll probably attend the ILC at Université de Montréal in August and will surely attend the presentation on SchemeSphere if I'm there.</div>
<div><br></div><div>I'll go through the guided tour of "Chicken Republic" and get familiar with its egg system until then.</div><div><br></div><div>Cheers,</div><div><br></div><div>Eric</div><div><br></div></div>
</div><div class="gmail_extra"><br><br><div class="gmail_quote">2014-07-09 12:39 GMT-04:00 mikel evins <span dir="ltr"><<a href="mailto:mevins@me.com" target="_blank">mevins@me.com</a>></span>:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div class=""><br>
On Jul 9, 2014, at 11:23 AM, Eric Parent <<a href="mailto:eric@eparent.info">eric@eparent.info</a>> wrote:<br>
<br>
> Any particular reason why you prefer Gambit over Chicken ?<br>
> Performance ? More standard compliant ?<br>
<br>
</div>It might be hard to answer that question. I've used both of them for many years. I like them both a lot.<br>
<br>
I might use Gambit more often because a few years ago I was writing some apps on iOS and OS X and found it easier to make Gambit work with iOS than to make Chicken work with it. Once I started building some apps using Gambit, it became a sort of self-reinforcing proposition, since I soon knew more about how to make Gambit do what I wanted than about how to make Chicken do it. That may be all there is to it.<br>

<br>
I still always consider Chicken, and sometimes I choose it--particularly if I want to do something relatively small and Chicken has good libraries to support it.<br>
<br>
In general, there are more likely to be supporting libraries for a given task in Chicken, simply because its library ecosystem is huge. It's a good implementation and I'm never sorry to use it.<br>
<br>
But I also really like Gambit, and I've learned my way around it well enough to make it an attractive choice in a lot of cases. For one thing, I hacked its innards a few times successfully to make it do new things, and that makes me confident I can do it again.<br>

<br>
Its chief disadvantage is that it doesn't have Chicken's vast cornucopia of libraries.<br>
<br>
I think Gambit usually comes out ahead in benchmarks, but not so far ahead that it should make a difference in choosing between them in  most cases; both of them are good compilers that generate good code for a variety of interesting platforms.<br>

<br>
On the other hand, if there were a Scheme that compiled to native code--or even efficient bytecode--in RAM, that supported saving and loading images, that worked on at least OS X, Linux, and Windows, and that  had a foreign function interface capable of dynamic linking to foreign libraries without wrapping them in Scheme-specific glue code, I'd probably switch to that in an instant. WIll Clinger's MacScheme had all those features except platform portability, and I miss it. Heck, it even knew how to compile different functions to bytecode or native code and run both kinds of functions from the same runtime.<br>

<br>
Environments like that are getting harder to come by lately.<br>
<br>
</blockquote></div><br><br clear="all"><div><br></div>-- <br><div dir="ltr">Eric<br></div>
</div>