[R6RS] incomplete draft of revised i/o

William D Clinger will at ccs.neu.edu
Fri Jan 19 12:35:55 EST 2007

Kent, quoting first himself and then Mike, wrote:

> >>I agree with Will that the magical mystery procedure should be eliminated. 
> >>I would go further and change the interface to string and bytevector
> >>ports, i.e., have the string and bytevector output port creation routines
> >>return two values:  a port and a procedure.  The procedure would be used
> >>to get the output.  This interface would be just as easy to use in all of
> >>the code I have that uses string output ports, it reduces the complexity
> >>and number of procedures in the report, and it can be implemented without
> >>the magical mystery procedure.
> >
> > That would also be acceptable for me.
> Okay.  I haven't heard any objections, so I'm going to assume this is okay
> with everyone else as well.

I object.

I see no technical connection between these two issues:

    1.  Should the magical mystery proc be part of R6RS?

    2.  Should the string output ports have the interface of
        5.91 or the one recently proposed by Kent?

The only connection between those issues is a matter of
marketing/propaganda: perhaps someone hopes that changing
the interface for string input ports will obscure the fact
that custom ports, without the magical mystery proc or
some similar hack, are not fully general.  I consider it
our duty to publicize such technical facts, not to hide

I also prefer the interface of 5.91 to the one proposed by
Kent.  Given a forced choice between

    A.  Keep both the magical mystery proc and the string
        port interface of 5.91.
    B.  Delete the magical mystery proc and also change
        the string port interface to the one proposed by

I vote for A.  I apologize for voting so late; I had not
been aware that the vote had been turned into a forced
choice between alternatives A and B.


More information about the R6RS mailing list