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

Re: July 15 draft sent

    I probably won't start another pass over it until a week from tomorrow
    (i.e. the 17th), so don't feel guilty if you don't send your remarks to
    me before that.  After the 20th is when you can start feeling guilty.

I received my copy of the new revision to the R^3RS yesterday (July 23)
and enclose my detailed comments below (boy, do I feel guilty!).  I am
quite impressed overall with the current state of the document and want to
commend Jonathan for the success of his efforts!  Nearly all of my
objections to the previous draft have been resolved satisfactorily.  I
will repeat below some that have not, but in general I am content to leave
their resolution in JAR's hands.

[page 1]
  I prefer to change "SCHEME" in the title to "Scheme", since it is not an

[page 3]
  I prefer to change "Snobol" to "SNOBOL", since it IS an acronym.

[page 4]
  [line 4, left col] Change "if the feature is not AS essential feature"
to "if the feature is not AN essential feature".
  [line 21, left col] Change "for a call to the procedures" (plural) to
"for a call to the procedure" (singular).
  [line 29, left col] Change "indicates that THE in" to "indicates that, in".
  [first bullet under 2.1] Remove the comma after "Certain identifiers".

[page 5]
  [first paragraph of 2.2] Whitespace may also occur in the space
character (denoted by "#\ ").
  [near the end of 2.3] You say that #T and #F are boolean CONSTANTs and
that #\ introduces a character CONSTANT; shouldn't you say that #(
introduces a vector CONSTANT also?
  [last 2 lines of 2.3] If my proposed number syntax is adopted, #S and #L
will not exist.
  [last 2 lines, right col] Flush the "Note: ..."; I assume it is a note
to yourself (?).

[page 6]
  [section 3.2] Change "#fand" to "#f and".
  [paragraph 6, sec 3.2] Change "Note that THAT the" to "Note that the".

[page 7]
  [last paragraph of sec. 4.1.3] Change "Note also that in many
dialects..." to "{\em Note:} In many dialects...".

[page 8]
  [line 6, right col] Shouldn't the notation (<test> => <recipient>) be
listed as a non-essential syntax in the heading rather than buried as an
implementation note in the body of the text?
  [last paragraph, right col] I was very happy with your use of {\em
Syntax:} and {\em Semantics:} headers but they disappeared from AND
onward.  I guess you ran out of time...

[page 9]
  [first paragragh, sec 4.2.2] There is a mysterious whitespace at the
beginning of the fourth line of the paragragh.
  [description of LET*] Shouldn't you replicate the description of
<bindings> and <body>?  You do for LETREC.
  Try to avoid the "widow" line for the heading of LET*.
  [last line, right col] Here, and elsewhere, you have incomplete sentences
in which the subject is missing.  This doesn't particularly offend me, and
it seems to read well, so I see no reason to correct it right away...

[page 10]
  [end of 4.2.4] The indenting for the "(LET LOOP ((NUMBERS ..." example
has gone awry.

[page 12]
  [end of 6.1] I'd like to see the example (EQ? NIL 'NIL) ==> #F added.
This reinforces the wording in the last paragraph of the left column,
which might be missed by someone looking only at the definition of NIL.

[page 14]
  [last paragraph of the description of EQ?] Omit the words "instead of as
a subroutine call".  It seems to imply that anything other than a pointer
comparison must be performed out of line, or that a pointer comparison
would necessarily be performed in line.

[page 17]
  [lines 10, 11 of left col] Omit the sentence: "It is questionable
whether these features [slashification and uninterned symbols] are worth
their complexity, so they are not standard in Scheme."  This editorial
comment is unnecessary and invites the response: "Then why is
SYMBOL->STRING worth while?"

[page 22]
  [sec 6.6] Clarify the sentence: "This rule resolves the ambiguous case
... the space character AS AS the ...".

[page 30]
  [sec 7.1.2, syntax of numbers] I mailed out a proposal for a syntax of
numbers compatible with Common Lisp last week but haven't received any
feedback.  Did it fail to make it to the mailing list or is it that

[page 36]
  Try to avoid the "widow" line for the subtitle "EXAMPLE".

  Add #T and #F, and possibly #!TRUE and #!FALSE (page 12), to the index.

David Bartley