type: function (subr) location: built-in source file: xlfio.c Common LISP compatible: similar supported on: all machines
(read-line [ <source> ] ) <source> - an optional source - must be a file pointer or stream, the default is *standard-input*
The READ-LINE function reads a single line from the specified <source>. The line read is returned as a string value for the result. The <source> may be a file pointer or a stream. If there is no <source>, *STANDARD-INPUT* is the default. If an end-of-file is encountered in the <source>, then NIL will be returned as the result.
(setq fp (open "f" :direction :output)) ; set up file (print "fe fi" fp) ; (print 12.34 fp) ; (close fp) ; ; (setq fp (open "f" :direction :input)) ; now read the file (read-line fp) ; returns ""fe fi"" (read-line fp) ; returns "12.34" (read-line fp) ; returns NIL (close fp) ;
COMMON LISP COMPATIBILITY: The XLISP and Common LISP READ-LINE functions are compatible for simple cases. They both allow for the optional <source>. However, in Common LISP, there are addition parameters which occur right after <source>. So, when porting from Common LISP to XLISP, remember there are additional arguments in Common LISP's READ-LINE.
COMMON LISP COMPATIBILITY: Common LISP specifies that read operations with a <source> of NIL, will come from *STANDARD-INPUT*. XLISP does not read the input from *STANDARD-INPUT* with a <source> of NIL. Common LISP also specifies that a <source> of T will read from *TERMINAL-IO*. XLISP does not allow T as a valid argument for <source>.