[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH] Improved string writing
From: |
Kevin Ryde |
Subject: |
Re: [PATCH] Improved string writing |
Date: |
Sat, 30 Apr 2005 09:43:31 +1000 |
User-agent: |
Gnus/5.110003 (No Gnus v0.3) Emacs/21.3 (gnu/linux) |
I expanded the words about the standard ports a bit, for a start:
-- Scheme Procedure: current-input-port
-- C Function: scm_current_input_port ()
Return the current input port. This is the default port used by
many input procedures.
Initially this is the "standard input" in Unix and C terminology.
When the standard input is a tty the port is unbuffered, otherwise
it's fully buffered.
Unbuffered input is good if an application runs an interactive
subprocess, since any type-ahead input won't go into Guile's buffer
and hence be unavailable to the subprocess.
Note that Guile buffering is completely separate from the tty "line
discipline". In the usual cooked mode on a tty, Guile only sees a
line of input once the user presses <return>.
-- Scheme Procedure: current-output-port
-- C Function: scm_current_output_port ()
Return the current output port. This is the default port used by
many output procedures.
Initially this is the "standard output" in Unix and C terminology.
When the standard output is a tty this port is unbuffered,
otherwise it's fully buffered.
Unbuffered output to a tty is good for ensuring progress output or
a prompt is seen. But an application which always prints whole
lines could change to line buffered, or an application with a lot
of output could go fully buffered and perhaps make explicit
`force-output' calls (*note Writing::) at selected points.
-- Scheme Procedure: current-error-port
-- C Function: scm_current_error_port ()
Return the port to which errors and warnings should be sent.
Initially this is the "standard error" in Unix and C terminology.
When the standard error is a tty this port is unbuffered, otherwise
it's fully buffered.
- Re: [PATCH] Improved string writing,
Kevin Ryde <=