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