Re: Why vectors? Elf 11 Aug 2008 22:26 UTC

On Mon, 11 Aug 2008, Derick Eddington wrote:

<lotsa snip>
> If rtd-field-names can directly return an internal data structure,
> that's obviously going to be the most efficient, but will it be able to
> or should it do that?  Is it really a performance concern?
> Implementations of rtd-all-field-names will probably use
> rtd-field-names, so rtd-all-field-names' performance will be affected by
> rtd-field-names, but is it really a concern?
>
> What is an example where the efficiency of using vector field specifiers
> versus list field specifiers for the API matters?
>
> rtd-accessor and rtd-mutator take a field name symbol argument (I like
> that) instead of a numeric index like R6RS does, and that seems like a
> similar performance concern which might not really need to be a concern.
>
> What could a sophisticated optimizing compiler do for these six
> procedures?
>

SRFIs have to have reference implementations.  It's better when theyre usable
and reasonably efficient than when they're not.  It's also possible to design
them in a clean, general fashion, rather than worrying about what kind of
compiler they have.  This is especially important for ERR5RS as a point
of contrast and portability.

-elf