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

Re: I/O proposal

A few remarks:

1.  LOAD does not specify how it interacts with CURRENT-INPUT-STREAM or
CURRENT-OUTPUT-STREAM while loading.  What is to be the preferred way
of loading a bootstrap of the following form:

(define! foo ...)

(define! bar (foo (read)))

..complicated data to be processed by foo during load..

It might be argued that this is bad style, but I am not convinced:
such a bootstrap is less dependent on operating system file naming
conventions than one with the data in a separate file.

2. "A different set of procedures will be needed to create streams from
and to strings, and the closing procedures should still work on them.
It seems that closing a string output stream should yield a string, but
it isn't clear what should be returned when a file output stream is

I don't understand this at all. The phrase "create streams from and to
strings" is rather difficult to parse, which doesn't help.

3. Are with-input-from-file and with-output-from-file the only way to
change the value of (current-input-stream) and (current-output-stream) ?
If so, shouldn't they be essential ?

-- Mitch Wand