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

Revision of SRFI 68 available



It's available at the usual place:

http://srfi.schemers.org/srfi-68

Here are the most important changes:

- The "byte" terminology was changed to adhere to SRFI 4 / SRFI 66.

- The various INPUT-xxx (and READ-xxx) procedures all return #f now.
  (Instead of an empty octet vector or string.)

- OUTPUT-U8VECTOR-N and OUTPUT-STRING-N are gone; their functionality
  is subsumed by OUTPUT-U8VECTOR and OUTPUT-STRING and optional
  arguments.

- The procedures for opening files for output now accept a
  file-options argument.

- Procedures for opening files simultaneously for input and output
  were added.

- Output translation procedures are called upon close with #f as the
  data object.

- A transcoding infrastructure was added to abstract over the details
  of the translation procedures, and to provide common text encodings
  and standard CR/LF translation.

- MAKE-I/O-BUFFER was added as a front end to MAKE-U8VECTOR.

- The ports layer and its specification were restructured in such a
  way that they're usable and understandable without the two layers
  below.  This allows Scheme systems to implement only the ports
  layer, or only the ports layer and the imperative layer.  Moreover,
  it allows Scheme systems to represent ports by something other than
  reference cells to streams.

- MAKE-STANDARD-INPUT-STREAM, STANDARD-OUTPUT-STREAM, and
  STANDARD-ERROR-STREAM were added to the streams layer.

- INPUT-U8VECTOR-N!, INPUT-STRING-N!, READ-U8VECTOR-N!, and
  READ-STRING-N! were added.

- Some obviously forgotten procedures were added:
  OPEN-WRITER-OUTPUT-STREAM, CALL-WITH-CURRENT-OUTPUT-STREAM,
  CALL-WITH-CURRENT-ERROR-PORT, OUTPUT-PORT-BUFFER-MODE,
  SET-OUTPUT-PORT-BUFFER-MODE!.

I hope y'all like the changes---I've mostly tried to follow the
suggestions people have made.  (Which were very helpful so far---keep
'em coming!)

-- 
Cheers =8-} Mike
Friede, Völkerverständigung und überhaupt blabla