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

records; BABY-DOE; another vote



    Here is the third and, I dare to hope, final version of the proposal.
    Will, does this look like consensus?
    
    	Pavel

Yes indeed.  Thank you, Pavel.  Presumably the record proposal will be
part of R5RS, but I wonder if anyone would mind if I made it an appendix
to R4RS, like the macro stuff.  If no one objects, I will assume no one
objects.

For that matter, would anyone mind if BABY-DOE (by whatever name results
from the vote being conducted by John Ramsdell) were also in an appendix
to R4RS, assuming we can agree on the remaining semantic issue?

You say you've forgotten the semantic issue?  (Lucky you.)  The issue is
whether a "for-effect" continuation (created by script-C for a <command>;
see the formal syntax and semantics):

    A.  accepts any number of return values.
    B.  requires exactly zero or exactly one value.
    C.  requires exactly one return value.
    D.  requires exactly zero return values.

Semantics A is implied by the current formal semantics, and is in my
opinion the most useful semantics.  Semantics B is a random compromise
between C and D.  Semantics C, the semantics that I mistakenly
characterized as the consensus months ago, is the most conservative
semantics that is compatible with the status quo.  Jinx observed that
Semantics D would be the most reasonable semantics if we were designing
a new language, but Semantics D isn't viable because of compatibility
problems.

Assuming that Semantics D is out of the question, the three remaining
semantics are consistent in the sense that, for example, someone who
wants to implement Semantics A or B would be free to do so if
Semantics C were adopted.  I therefore interpret a vote against
semantics C as a vote against A and B, and so on.

For the purpose of determining whether anyone objects to describing
BABY-DOE in an appendix to R4RS, for the purpose of knowing what
semantics to describe in the event that no one objects, and in any
case for the purpose of generating a semantics to accompany the agenda
item being generated by John Ramsdell's vote on the name, I would like
to conduct two votes.  Please indicate your votes by putting your mark
in two of the boxes in the Vote column and mail your response directly
to me at will@cs.uoregon.edu.  I will report the results at the end of
November by sending mail to this list.

----------------------------------------------------------------------
Vote  |  Position
======================================================================
      |
      |  I do not object to describing BABY-DOE in an appendix to
      |  R4RS, provided its semantics is compatible with the semantics
      |  I favor.
----------------------------------------------------------------------
      |
      |  I object to describing BABY-DOE in an appendix to R4RS.
      |
      |
======================================================================
      |
      |  I do not object to semantics A:  "for-effect" continuations
      |  accept any number of return values.
      |
----------------------------------------------------------------------
      |
      |  I object to semantics A but I do not object to semantics B:
      |  "for-effect" continuations accept either zero or one return
      |  value.
----------------------------------------------------------------------
      |
      |  I object to semantics A and B but I do not object to
      |  semantics C: "for-effect" continuations accept one return
      |  value.
----------------------------------------------------------------------
      |
      |  None of the above.  Either I object to BABY-DOE, or I object
      |  to Clinger's stupid characterization of the alternative
      |  semantics for BABY-DOE.
======================================================================