[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

19.1 Introduction to Reading and Printing

Reading a Lisp object means parsing a Lisp expression in textual form and producing a corresponding Lisp object. This is how Lisp programs get into Lisp from files of Lisp code. We call the text the read syntax of the object. For example, the text `(a . 5)' is the read syntax for a cons cell whose CAR is a and whose CDR is the number 5.

Printing a Lisp object means producing text that represents that object--converting the object to its printed representation (see section 2.1 Printed Representation and Read Syntax). Printing the cons cell described above produces the text `(a . 5)'.

Reading and printing are more or less inverse operations: printing the object that results from reading a given piece of text often produces the same text, and reading the text that results from printing an object usually produces a similar-looking object. For example, printing the symbol foo produces the text `foo', and reading that text returns the symbol foo. Printing a list whose elements are a and b produces the text `(a b)', and reading that text produces a list (but not the same list) with elements a and b.

However, these two operations are not precisely inverse to each other. There are three kinds of exceptions:


[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

This document was generated on May 2, 2002 using texi2html