On Wed, Oct 28, 2015 at 6:13 AM, John Cowan <xxxxxx@mercury.ccil.org> wrote:
The trouble is that option #2 doesn't have self-consistent naming.
Under it, vector-map doesn't take an index, whereas vector-fold does.
Option #3 gives the SRFI self-consistent naming that also agrees with
the R7RS, at the expense of more names and additional complexity.

Ah, that's right.  I misread the option #3.

Hmm, personally, I hardly used srfi-43's those procedures directly (I've used srfi-43 for
vector-append, vector-index, vector-any etc.)  For mapping and folding, Gauche has
generic version of map/fold/for-each that works on any sequence, and we also
have generic *-with-index versions, which have been enough.

If we'll ever have generic sequence mapper/reducer (doesn't necessary in R7RS-large,
but for broader scope), it'll be reasonable that it has */index version, and then 
having <specific-sequence>/index would look an overkill.  Besides, srfi-42 
comprehensions already provides generic walker with index, and other generic
iterator may also have it.  Thinking about that, I'd rather say let's drop index version
altogether.  Either (1) make vector-fold etc. consistent with R7RS vector-map,
or (2) trim down srfi-43, excluding those walkers, counting on the generic iterator
would cover the case.   Those who wants srfi-43 can always have it, so I prefer
consistency inside R7RS-large as a whole be maintained.