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

Re: [Scheme-reports] *TELUS Detected Spam*Re: [r6rs-discuss] returning back to pattern matching

Vincent Manis scripsit:

> Also amen. I frankly don't care if there's a loop macro in CL-Scheme,
> er, WG-2 Scheme. Put it in a library named (r7rs loop), and those people
> who want it can use it, and those people who don't want it---like
> me---can ignore it. (Actually, I guess I *do* care: documenting it
> makes the Report bigger.) For that matter, WG-2 should mostly be a
> set of libraries that run in any WG-1 Scheme system, though I don't
> particularly mind if there's a *small* set of extensions to WG-1 in
> the WG-2 core.

That's exactly what will be the case.  WG2 may mandate a few features
that are optional in WG1, simply so that WG2 modules can be specified
to use them.  This is still an open question.

For example, if WG1 doesn't provide byte vectors, then WG2 might require
them so that WG2 libraries can rely on the existence of byte vectors.

> Unicode is another example. Full Unicode support requires an internal
> copy of most or all of the Unicode Character Database, which, for many
> applications that just need to throw around a few accented characters
> or math symbols, is overkill.

Yes, and there will be a UCD library in WG2.  That's one of the ones I
had to invent from scratch.

> R6RS requires a relatively small subset of Unicode, just enough to
> determine character classification.

Case folding will be in an optional *WG1* module, as will normalized

> Even in a Unicode-compliant implementation, the number of users who
> need the whole megillah is quite small. A supplementary library that
> wraps the ICU library would be quite suitable for them.

Of course that's a reasonable implementation strategy, though a pure
Scheme implementation is still possible.

> So, please:
>   1. small, clean, core language, with a modest number of extensions
>   to existing standards (though, I hope, nothing that is an extension
>   to existing practice).

Such is WG1 Scheme.

>   2. a core set of libraries that solves, in a reasonable way, problems
>   that most Scheme programmers are likely to encounter frequently.

Nobody knows what "most" Scheme programmers need, hence the fairly large
set in WG2.  If some turn out to go unimplemented or unused, they can be
removed in R8RS, since they are all optional.

>   3. supplementary libraries, outside the Report, that add additional
>   functionality, or sometimes reimplement features from the Report in a
>   more general or more precise way. These start appearing once there's
>   a body of R7RS users who want them, and maybe the Steering Committee
>   might one day establish a WG to produce a Report on a common set of
>   these libraries.

That's another way of looking at what WG2 Scheme is.

> I am very optimistic that the current process will lead to these
> objectives being satisfied, but still want to encourage the
> participants to focus on creating a language that will sharply
> increase the willingness of programmers, educators, and others to
> adopt Scheme. That's what really matters.

+1, and thank you.

John Cowan   cowan@x   http://ccil.org/~cowan
I must confess that I have very little notion of what [s. 4 of the British
Trade Marks Act, 1938] is intended to convey, and particularly the sentence
of 253 words, as I make them, which constitutes sub-section 1.  I doubt if
the entire statute book could be successfully searched for a sentence of
equal length which is of more fuliginous obscurity. --MacKinnon LJ, 1940

Scheme-reports mailing list