<html><head><meta http-equiv="Content-Type" content="text/html; charset=ANSI_X3.4-1968"><title>Chapter 14. Printer</title><link rel="stylesheet" href="ecl.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.75.2"><link rel="home" href="index.html" title="The ECL manual"><link rel="up" href="pt01.html" title="Part I. Standards"><link rel="prev" href="ch13s02.html" title="13.2. Input/Output model"><link rel="next" href="ch15.html" title="Chapter 15. Environment"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Chapter 14. Printer</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch13s02.html">Prev</a> </td><th width="60%" align="center">Part I. Standards</th><td width="20%" align="right"> <a accesskey="n" href="ch15.html">Next</a></td></tr></table><hr></div><div class="chapter" title="Chapter 14. Printer"><div class="titlepage"><div><div><h2 class="title"><a name="sec.ansi.printer"></a>Chapter 14. Printer</h2></div></div></div><p>In all situations where the rules are well specified, <span class="application">ECL</span> prints objects according to <a class="xref" href="bi01.html#bib.ANSI">ANSI</a>. The specification leaves however a number of cases as implementation dependent behavior. The output of <span class="application">ECL</span> in those cases is summarized in <a class="xref" href="ch14.html#table.printer" title="Table 14.1. Implementation specific printed representation">Table 14.1</a>. Except for the types <span class="type">character</span> and <span class="type">random-state</span>, most of those examples regard non-standard written forms <code class="literal">#<...></code> cannot be read back using <code class="function">read</code>. These printed representations are just informative and should not be used to reconstruct or compare objects.</p><div class="table"><a name="table.printer"></a><p class="title"><b>Table 14.1. Implementation specific printed representation</b></p><div class="table-contents"><table summary="Implementation specific printed representation" border="1"><colgroup><col><col><col></colgroup><thead><tr><th>Lisp type</th><th>Format</th><th>Remarks</th></tr></thead><tbody><tr><td><span class="type">character</span></td><td><code class="literal">#U<em class="replaceable"><code>xxxx</code></em></code></td><td>Only used for non standard characters without names.</td></tr><tr><td><span class="type">package</span></td><td><code class="literal">#<PACKAGE <em class="replaceable"><code>name</code></em>></code></td><td> </td></tr><tr><td><span class="type">random-state</span></td><td><code class="literal">#$<em class="replaceable"><code>base-10-integer</code></em></code></td><td> </td></tr><tr><td><span class="type">bitvector</span></td><td><code class="literal">#<bit-vector <em class="replaceable"><code>unique-id</code></em>></code></td><td>Only when <code class="varname">*print-array*</code> is false.</td></tr><tr><td><span class="type">vector</span></td><td><code class="literal">#<vector <em class="replaceable"><code>unique-id</code></em>></code></td><td>Only when <code class="varname">*print-array*</code> is false.</td></tr><tr><td><span class="type">array</span></td><td><code class="literal">#<array <em class="replaceable"><code>unique-id</code></em>></code></td><td>Only when <code class="varname">*print-array*</code> is false.</td></tr><tr><td><span class="type">hash-table</span></td><td><code class="literal">#<hash-table <em class="replaceable"><code>unique-id</code></em>></code></td><td> </td></tr><tr><td><span class="type">readtable</span></td><td><code class="literal">#<readtable <em class="replaceable"><code>unique-id</code></em>></code></td><td> </td></tr><tr><td>interpreted <span class="type">function</span></td><td><code class="literal">#<bytecompiled-function <em class="replaceable"><code>name-or-id</code></em>></code></td><td>Name is a <span class="type">symbol</span>.</td></tr><tr><td>machine compiled <span class="type">function</span></td><td><code class="literal">#<compiled-function <em class="replaceable"><code>name</code></em>></code></td><td>Name is a <span class="type">symbol</span>.</td></tr><tr><td><span class="type">input-stream</span></td><td><code class="literal">#<input stream "<em class="replaceable"><code>filename</code></em>"></code></td><td>An stream that reads from <em class="replaceable"><code>filename</code></em>.</td></tr><tr><td><span class="type">output-stream</span></td><td><code class="literal">#<output stream "<em class="replaceable"><code>filename</code></em>"></code></td><td>An stream that writes to <em class="replaceable"><code>filename</code></em>.</td></tr><tr><td><span class="type">probe-stream</span></td><td><code class="literal">#<probe stream "<em class="replaceable"><code>filename</code></em>"></code></td><td> </td></tr><tr><td><span class="type">string-input-stream</span></td><td><code class="literal">#<string-input stream from "<em class="replaceable"><code>string-piece</code></em>"></code></td><td>The string is the text left to be read.</td></tr><tr><td><span class="type">string-output-stream</span></td><td><code class="literal">#<string-output stream <em class="replaceable"><code>unique-id</code></em>></code></td><td> </td></tr><tr><td><span class="type">two-way-stream</span></td><td><code class="literal">#<two-way stream <em class="replaceable"><code>unique-id</code></em>></code></td><td> </td></tr><tr><td><span class="type">echo-stream</span></td><td><code class="literal">#<echo stream <em class="replaceable"><code>unique-id</code></em>></code></td><td> </td></tr><tr><td><span class="type">synonym-stream</span></td><td><code class="literal">#<synonym stream to <em class="replaceable"><code>symbol</code></em>></code></td><td> </td></tr><tr><td><span class="type">broadcast-stream</span></td><td><code class="literal">#<broadcast stream <em class="replaceable"><code>unique-id</code></em>></code></td><td> </td></tr><tr><td><span class="type">concatenated-stream</span></td><td><code class="literal">#<concatenated stream <em class="replaceable"><code>unique-id</code></em>></code></td><td> </td></tr><tr><td><span class="type">closed-stream</span></td><td><code class="literal">#<closed <em class="replaceable"><code>...</code></em>></code></td><td>The dots denote any of the above stream forms.</td></tr></tbody></table></div></div><br class="table-break"></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch13s02.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="pt01.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="ch15.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">13.2. Input/Output model </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> Chapter 15. Environment</td></tr></table></div></body></html>