CLCS
Macro

with-standard-io-syntax

with-standard-io-syntax {form}*{result}*

Arguments and Values

formsan implicit progn.
resultsthe values returned by the forms.

Description

Within the dynamic extent of the body of forms, all reader/printer control variables, including any implementation-defined ones not specified by this standard, are bound to values that produce standard read/print behavior. The values for the variables specified by this standard are listed in Figure 23–1.

[Reviewer Note by Barrett: *print-pprint-dispatch* should probably be mentioned here, too.]

VariableValue
*package*The CL-USER package
*print-array*t
*print-base*10
*print-case*:upcase
*print-circle*nil
*print-escape*t
*print-gensym*t
*print-length*nil
*print-level*nil
*print-lines*nil
*print-miser-width*nil
*print-pprint-dispatch*The standard pprint dispatch table
*print-pretty*nil
*print-radix*nil
*print-readably*t
*print-right-margin*nil
*read-base*10
*read-default-float-format*single-float
*read-eval*t
*read-suppress*nil
*readtable*The standard readtable
Figure 23–1: Values of standard control variables

Examples

 (with-open-file (file pathname :direction :output)
   (with-standard-io-syntax
     (print data file)))

;;; ... Later, in another Lisp:

 (with-open-file (file pathname :direction :input)
   (with-standard-io-syntax
     (setq data (read file))))