[r6rs-discuss] Correct I/O Interface Inconsistencies

From: MichaelL_at_frogware.com <MichaelL>
Date: Fri Nov 10 14:26:43 2006

Name: Michael Lenaghan
Email: michaell at frogware.com
Type: Simplification
Priority: Minor
Component: I/O
Version: 5.91
Section: 15.3.5, 15.3.6, 15.4
Dependencies: None

Summary:

Correct some I/O interface inconsistencies regarding what procedures are
available and where they're located.

Description:

There appear to be some funny inconsistencies in the I/O spec.

 * In 15.3.6 (Output ports) there's call-with-bytes-output-port and
call-with-string-output-port, but in 15.3.5 (Input ports) there's no
corresponding call-with-bytes-input-port and call-with-string-input-port.

 * In 15.3.6 (Output ports) and 15.3.5 (Input ports) there's no
call-with-file-output-port or call-with-file-input-port (respectively).

 * In 15.4 (Simple I/O) there's call-with-input-file and
call-with-output-file and with-input-from-file and with-output-to-file.

Recommendations:

 * Add call-with-input-string and call-with-output-string and
with-input-from-string and with-output-to-string to 15.4.

 * Remove call-with-string-output-port from 15.3.6.

 * Add call-with-bytes-input-port to 15.3.5 (or, conversely, remove
call-with-bytes-output-port from 15.3.6).

(An alternative would be to have all appropriate call procedures for files
and strings in 15.3.5 and 15.3.6. At least make the choices consistent.)
Received on Fri Nov 10 2006 - 14:26:49 UTC

This archive was generated by hypermail 2.3.0 : Wed Oct 23 2024 - 09:15:00 UTC