[R6RS] I/O <-> GC question

Michael Sperber sperber
Tue Nov 23 15:35:05 EST 2004

>>>>> "Marc" == Marc Feeley <feeley at IRO.UMontreal.CA> writes:

Marc> Why are you so reluctant to open up the discussion to the other
Marc> editors?  Especially when I'm obviously interested (and possibly
Marc> Matthew with whom we discussed I/O at Snowbird) I'm not asking for all
Marc> the details.  Just enough to understand which aspects of I/O you are
Marc> concerning yourself with.  Which **problems** are you trying to solve?
Marc> In other words what do you mean by "I/O"?  Is it "classical"
Marc> filesystem stuff?  Do you include file naming issues?  Text
Marc> encoding?

Because I've had to expect to get non-constructive criticism before
there's even a proposal, and both my time and my temper are of limited


- filesystem operations (even though I have a separate proposal for
  file names in the making)
- non-blocking I/O, polling, select (better handled in conjunction
  with threads)


- dealing with byte and text streams
- text encoding / decoding / re-encoding
- the ability to create new "port" types
- the ability to specify "ports" as translated versions of other
  "ports" easily
- the ability to mix text (in multiple encodings) and binary data

None of the Scheme implementations I've looked at addresses all of
these, but I believe they can all be addressed in a reasonably
straightforward and simple manner.

I'm quoting "port" here because---as I mentioned at the outset---I'm
playing around with a system similar to what's in the SML Basis.  The
SML Basis has a total of four layers in the I/O system (of which
Scheme ports would be the outermost), and the creation of new types
and translation would probably happen in the other layers.

(The SML Basis also doesn't solve all of these problems either, but
it's fairly close on all of them.)

If you're interested in the SML Basis, read about it on:


... or buy Reppy's book, which just came out.

I'll also mention that what I'm doing also builds on the philosophy
for relating byte streams and text streams outlined in Matthew's
Unicode proposal.

Cheers =8-} Mike
Friede, V?lkerverst?ndigung und ?berhaupt blabla

More information about the R6RS mailing list