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

Re: [Scheme-reports] formal comment: Using "scheme" for standard library is problematic

On 11/25/2012 05:12 PM, John Cowan wrote:
> It is over-late for Formal Comments, unless you want to make this a Formal
> Objection -- that is, something you think constitutes a charter violation
> or otherwise seriously threatens the ratification of the seventh draft
> (plus editorial corrections) of R7RS-small.  If so, let me know.

I can't find the definitions of Formal Comment vs Formal Objections.
I don't think this issue is a "charter violation  or otherwise
seriously threatens the ratification of the seventh draft."

However, it may cause some awkward forward compatibility problems.
At least an editorial clarification may be in order:  While the R7RS
standard can't constrain future standards bodies, it would be helpful
to understand the intent of the committee and the community:
(1) (scheme file) is reserved to mean exactly the procedures specified
by R7RS with the R7RS semantics, and future standards should not add or
remove procedures or change the semantics.
(2) (scheme file) for R7RS means the listed procedures, but R7R8
it might expand to a slightly different list of functions - most
likely additions.

> A particular implementation can easily achieve this by having the
> (scheme file) library import the (fantastic-scheme file 7) library and
> export everything in it.  When it comes time to provide an R7RS/R8RS
> implementation of fantastic-scheme, the (scheme file) library can be
> changed to read
> (cond-expand
>    (r7rs (import (fantastic-scheme file 7))
>          (export ...))
>    (r8rs (import (fantastic-scheme file 8))
>          (export ...)))

This seems to suggest interpretation (2) above, since (scheme file)
means different things depending on whether r7rs or r8rs is defined.
	--Per Bothner
per@x   http://per.bothner.com/

Scheme-reports mailing list