Re: [Scheme-reports] [scheme-reports-wg1] Arthur Gleckler's rationales for 4th ballo votes Alex Shinn 31 Aug 2011 02:09 UTC

On Wed, Aug 31, 2011 at 10:28 AM, John Cowan <cowan@mercury.ccil.org> wrote:
> Alex Shinn scripsit:
>
>> The draft still needs to be updated to state that modules in the
>> report may only be omitted in extreme circumstances (I thought I had
>> done this).
>
> Are you going to argue that every Scheme must, except in extreme
> circumstances, support the whole numeric tower?  So much for Bigloo,
> Chicken, SigScheme, Scheme 9, SCM, Dream, Psyche, and Wraith.  (Not all
> of these are R5RS, but the tower has been around a long time.)

No, the full numeric tower is explicitly described as optional,
outside the context of modules.

Modules which could be omitted are:

  * (scheme file) - if there is no filesystem
  * (scheme time) - if there is no clock
  * (scheme process-context) - if there is no relevant context (no argv or env)
  * (scheme eval) and (scheme repl) - if the implementation doesn't
support eval (an optional feature)
  * (scheme load) - if there's not support for both eval and filesystems
  * (scheme inexact) - if there are no floats (an optional feature)
  * (scheme complex) - if there are no complex numbers (an optional feature)

Implementations should NOT be allowed to omit any
other modules.

[If an implementation is installed on
such a memory constrained system that it can fit
the core system but not all of the standard modules
(and I'd like to know if this is true for any modern
systems), then it would have no choice but to omit
one or more modules, and you could then debate
whether this is a compliant implementation or not.]

That said, I'd like to keep the description of
optionality in the small language as simple as
possible.  We probably want much stricter definitions
of conformance, likely broken into compliance levels,
in the large language.

> It borrows from R6RS, yes, but it also borrows from CLHS.  It is, in
> plain language, a revision of R5RS.

You're making two claims.  1) That the definition of
"revision" as used in the Scheme report titles refers
to some specific definition which you have not made
clear, but which obviously does not involve the size
of edits.  Since I'm not sure what definition you're
assuming, I can't really argue with this.  2) That the
phrasing "revised revised X" implies a revision of
a revision of X using the definition in 1, and precludes
the interpretation that X has simply been revised
twice.  I don't accept either claim.

I also think, since R7RS is closer in spirit to the earlier
reports than R6RS (for good or for bad), it would be
misleading to choose a different naming convention,
thereby giving the wrong impression that R6RS is
closer to the earlier reports.

--
Alex