Email list hosting service & mailing list manager

Extending SRFI 130 to subsume SRFI 13 (mostly) John Cowan (26 Dec 2015 18:53 UTC)
Re: Extending SRFI 130 to subsume SRFI 13 (mostly) Alex Shinn (07 Jan 2016 23:40 UTC)
Re: Extending SRFI 130 to subsume SRFI 13 (mostly) John Cowan (07 Jan 2016 23:46 UTC)
Re: Extending SRFI 130 to subsume SRFI 13 (mostly) Alex Shinn (08 Jan 2016 00:15 UTC)

Extending SRFI 130 to subsume SRFI 13 (mostly) John Cowan 26 Dec 2015 18:53 UTC

I'm thinking that since SRFI 130 as it currently exists does not replace
SRFI 13, because of its lack of whole-string procedures, and since Alex
has proposed a direct merger (which I rejected because it didn't seem
to add enough value), I might try something else.

How about a version of SRFI 130 which contains three sets of procedures:
foo/whole for doing foo on a whole string, foo/indices for doing foo
on a substring delimited by start and stop indices, and foo/cursors
for doing foo on a substring delimited by start and stop cursors?
This would cover SRFI 13's operations with the following exceptions:
casing, comparison, mutation, low-level procedures, and all talk of
string sharing.  Casing and comparison are implementation-dependent
on R7RS-small anyway; mutation is not something I want to encourage;
string sharing has been put out of scope for this SRFI.

Providing SRFI 13's names would be a matter of a case-lambda that
dispatches to foo/whole or foo/indices according to the number
of arguments.  I probably wouldn't include those in this SRFI: (a)
they are trivial, and (b) you might want to dispatch to foo/whole or
foo/cursors instead.

But before I do all that editorial work (and that's all it is), I'd
like some encouragement from commenters that it's really a good or
worthwhile idea.  What do you all think?

--
John Cowan          http://www.ccil.org/~cowan        xxxxxx@ccil.org
The native charset of SMS messages supports English, French, mainland
Scandinavian languages, German, Italian, Spanish with no accents, and
GREEK SHOUTING.  Everything else has to be Unicode, which means you get
only 70 16-bit characters in a text instead of 160 7-bit characters.