guile-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: pass at srfi-89 implementation


From: Julian Graham
Subject: Re: pass at srfi-89 implementation
Date: Mon, 28 Jul 2008 00:19:21 -0400

> I'm still not convinced by the last option.  Given the above, Option 2
> (that is, writing our own, preferably in Scheme) seems to be the safest.
> Hopefully this isn't too much work, but the above quote indicates that
> we should be careful about performance.  ;-)
>
> Would you like to try doing it?

[Time passes.]

Okay, I've tried -- at length.  And so far I haven't been able to top
the performance of the reference implementation.  In fact, it actually
seems to be fairly efficient (I now think Marc's quote above about
Gambit's built-in support says less about the relative shortcomings of
his particular implementation and more about the benefits of doing
something like this in native code).  From what I can see, there are
only a few areas in which the reference implementation could be
improved by Guile-specific features:

* Native hash tables (Marc's code has its own hash table implementation)
   * Use of `hashq-get-handle' (the reference implementation relies on
the identity of an `undefined' object)
* Symbol generation for naming run-time helper functions (the
reference implementation explicitly exports bindings for helper
functions)

So it looks like the right way to go might be to tweak Marc's
implementation so that it takes advantage of the above, although I
don't see it improving the performance all that much.  Alternatively,
we could do this in C, but I don't know if it's worth the added
complexity.  Thoughts?


Regards,
Julian




reply via email to

[Prev in Thread] Current Thread [Next in Thread]