ToC | DocOverview | CGDoc | RelNotes | Index | PermutedIndex
| Allegro CL

| ANSI Common Lisp 22 Printer 22.1 The Lisp Printer 22.1.1 Overview of The Lisp Printer ### 22.1.1.1 Multiple Possible Textual Representations Most objects have more than one possible textual representation. For example, the positive integer with a magnitude of twenty-seven can be textually expressed in any of these ways:
     27    27.    #o33    #x1B    #b11011    #.(* 3 3 3)    81/3
A list containing the two symbols `A` and `B` can also be textually expressed in a variety of ways:
     (A B)    (a b)    (  a  b )    (\A |B|)
    (|\A|
      B
    )
In general, from the point of view of the Lisp reader, wherever whitespace is permissible in a textual representation, any number of spaces and newlines can appear in standard syntax. When a function such as print produces a printed representation, it must choose from among many possible textual representations. In most cases, it chooses a program readable representation, but in certain cases it might use a more compact notation that is not program-readable. A number of option variables, called printer control variables, are provided to permit control of individual aspects of the printed representation of objects. The next figure shows the standardized printer control variables; there might also be implementation-defined printer control variables.
Standardized Printer Control Variables
*print-array* | *print-gensym* | *print-pprint-dispatch*
*print-base* | *print-length* | *print-pretty*
*print-case* | *print-level* | *print-radix*
*print-circle* | *print-lines* | *print-readably*
*print-escape* | *print-miser-width* | *print-right-margin*
In addition to the printer control variables, the following additional defined names relate to or affect the behavior of the Lisp printer:
Additional Influences on the Lisp printer.
*package* | *read-eval* | readtable-case
*read-default-float-format* | *readtable* |
22.1.1.1.1 Printer Escaping

© Franz Inc. All Rights Reserved - File last updated 2022-07-25