22.8. Formatted Output
Prev | Chapter 22. Printer | Next

## 22.8. Formatted Output [sec_22-3]

### Function `FORMAT`

The additional `FORMAT` instruction ~! is similar to `~/`, but avoids putting a function name into a string, thus, even if the function is not interned in the “COMMON-LISP-USER” package, you might not need to specify the package explicitly. `(`FORMAT` `stream` "~arguments!" `function` `object`)` is equivalent to `(`FUNCALL` `function` `stream` `object` `colon-modifier-p` `atsign-modifier-p` `arguments`)`.

The additional `FORMAT` instruction ~. is a kind of opposite to `~&`: It outputs a conditional newline, by calling the function `EXT:ELASTIC-NEWLINE`. `~`n`.` outputs `n-1` newlines followed by an `EXT:ELASTIC-NEWLINE`. `~0.` does nothing.

`FORMAT` `~R` and `FORMAT` `~:R` can output only integers in the range `|`n`| < `1066``. The output is in English, according to the American conventions, and these conventions are identical to the British conventions only in the range `|`n`| < `109``.

`FORMAT` `~:@C` does not output the character itself, only the instruction how to type the character.

For `FORMAT` `~E` and `FORMAT` `~G`, the value of `*READ-DEFAULT-FLOAT-FORMAT*` does not matter if `*PRINT-READABLY*` is true.

`FORMAT` `~T` can determine the current column of any built-in stream.

| These notes document CLISP version 2.45 | Last modified: 2008-05-14

Enter your search termsSubmit search form
Webclisp.cons.orgclisp.podval.orgwww.lisp.org

Prev | Up | Next
22.7. The Lisp Pretty Printer | Home | 22.9. Functions `WRITE` & `WRITE-TO-STRING`