[gambit-list] Does gambit-c have call/ec?

Marc Feeley feeley at iro.umontreal.ca
Wed Jun 27 11:16:53 EDT 2007


On Jun 27, 2007, at 8:35 AM, Marc Feeley wrote:

> On 25-Jun-07, at 4:27 PM, naruto canada wrote:
>
>> Does gambit-c have call/ec? Thanks.
>
> Call/ec is not predefined.  You can define it yourself like this:
>
> (define call/ec call/cc)
>
> Obviously, in this case the implementation of call/ec is not as fast
> as it could be.  On the other hand, Gambit's implementation of
> continuations is one of the most efficient.  For example, on the ctak
> benchmark which uses call/cc extensively, Gambit is about 2 orders of
> magnitude faster than MzScheme.  It would be interesting to see how
> MzScheme fairs when call/cc is replaced by call/ec in that benchmark
> (I can't run the test because my usual work machine is out of
> order).  See http://www.iro.umontreal.ca/~gambit/bench.html for other
> benchmark results (fibc also uses continuations extensively).

On a 1.66GHz Intel Core Duo Mac Mini, I just tried ctak and fibc on  
MzScheme v370 with call/cc and call/ec and I get these relative  
execution times:

        Gambit  MzScheme MzScheme
        call/cc  call/cc  call/ec
ctak     1.0    113.6      7.1
fibc     1.0     56.1      5.5

So call/ec improves the MzScheme execution times by an order of  
magnitude.  The resulting performance is still quite far from using  
plain call/cc with Gambit-C.

Marc

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.iro.umontreal.ca/pipermail/gambit-list/attachments/20070627/590ee379/attachment.htm>


More information about the Gambit-list mailing list