[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Awaken, discussion!
On Monday, Oct 27, 2003, at 22:46 US/Eastern, Alex Shinn wrote:
A couple comments.
For vector-copy! Guile provides vector-move-left! and
vector-move-right!, so that you can safely copy a vector onto itself
(useful for implementing -insert/-delete). You don't really need the
-left!/-right! distinction, so long as you check the TSTART vs. FSTART
(if TSTART is smaller you copy left->right, if FSTART is smaller you
copy right->left). So the API can remain the same but it's probably
worth requiring in the SRFI that TARGET and VEC are allowed to be the
This sounds like a good idea (in fact, it's what SRFI 13 does with its
STRING-COPY!). I shall put this in the next revision of the document
For the CMP of vector-binary-search, is there a consensus on returning
Nope. That was pretty arbitrary on my part.
You could pass a < predicate which is consistent with the
SRFI and allows use of built-ins like string-ci<?, or use a comparator
with a positive/negative/zero as in C which allows the use of the
built-in - procedure.
Yes, I realized a while ago that it would be better to use positive/
zero/negative results for the comparison procedure. I shall change
this as well.
Of course, you didn't comment on the insertion and deletion stuff like
I asked you to...that stuff is about the only reason I haven't made
the final word to finalize the SRFI.
And it occurs to me that no one mentioned anything about the /INDEX
variants of VECTOR-MAP[!] and VECTOR-FOR-EACH; the document doesn't
specify where the index argument is. I'd prefer it to be the first
argument. Would anyone mind if I made this change, even though it's
incompatible with the current reference implementation? (which, of
course, I shall fix as well)