[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Scheme-reports] Draft 3 Comments: Chapter 2
- To: scheme-reports@x
- Subject: [Scheme-reports] Draft 3 Comments: Chapter 2
- From: Denis Washington <denisw@x>
- Date: Mon, 25 Jul 2011 23:03:16 +0200
I like how the new paragraph about vertical bar syntax fits into the
flow of the original text. However, I find the use of the term "reader"
in the description of #!fold-case / #!no-fold-case to be problematic as
it is nowhere defined or otherwise used in the report (except for
addressing the actual reader of the report in section 6.2.5). I think it
would be better to speak of "the read procedure" here, which is what
section 1.2 refers to as what (quote:) "performs syntactic as well as
lexical decomposition of the data it reads".
Another somewhat vague and never-defined term used here is "lexeme"; in
this context, one could go with simply "data" instead.
Also, forward references to "where comments may appear" and
"string-foldcase" might be nice. The same could be said for "port", but
I think its OK to leave it out as it's clear that the needed information
can be found where "read" is defined.
"These directives may appear anywhere comments may appear (see below)
and are treated as comments, except that they affect the reading of
subsequent data. The #!fold-case directive causes the read procedure to
case-fold (as if by string-foldcase, see section 6.3.5) each identifier
and character name subsequently read from the same port. The
#!no-fold-case directive causes the read proceudre to return to the
default, non-folding behavior."
(I left out the last sentence and merged it into the #!fold-case one.)
2.2. Whitespace and comments
This is not really an editorial comment, but still stating that square
brackets are "reserved for possible future extensions" seems a bit funny
given that very many Scheme implementations let you use them
interchangeably with parentheses and that R6RS even standardized that
IIRC; so, given that it is outright unrealistic to ever assigning any
other meaning to them without breaking tons of existing Scheme code, it
should be about time that this can be relied upon (even if there a quite
a few Schemers that dislike this square bracket usage; I do, for instance).
Having said that, I know that adopting this would most probably require
a vote (or has already been voted on? I don't know) which might not go
through. But at the very least, the report should mention that this is a
common use of square brackets in several implementations. Everything
else somewhat feels as if the report hasn't catched up with reality.
But enough critique, everything else looks good to me. :)
Scheme-reports mailing list