CLHS: Variable *TERMINAL-IO*

#

Variable *TERMINAL-IO*

Value Type:

a bidirectional stream.

Initial Value:

implementation-dependent, but it must be an open stream that is not a generalized synonym stream to an I/O customization variables but that might be a generalized synonym stream to the value of some I/O customization variable.

Description:

The value of *terminal-io*, called terminal I/O, is ordinarily a bidirectional stream that connects to the user's console. Typically, writing to this stream would cause the output to appear on a display screen, for example, and reading from the stream would accept input from a keyboard. It is intended that standard input functions such as read and read-char, when used with this stream, cause echoing of the input into the output side of the stream. The means by which this is accomplished are implementation-dependent.

The effect of changing the value of *terminal-io*, either by binding or assignment, is implementation-defined.

Examples:

     (progn (prin1 'foo) (prin1 'bar *terminal-io*))
    >>  FOOBAR
    =>  BAR
     (with-output-to-string (*standard-output*)
       (prin1 'foo)
       (prin1 'bar *terminal-io*))
    >>  BAR
    =>  "FOO"

Affected By: None.

See Also:

*debug-io*, *error-output*, *query-io*, *standard-input*, *standard-output*, *trace-output*

Notes: None.

Copyright 1996-2005, LispWorks Ltd. All rights reserved.