Next: List-related Predicates, Previous: Cons Cells, Up: Lists [Contents][Index]
A cons cell can be illustrated as a pair of boxes. The first box
represents the CAR and the second box represents the CDR.
Here is an illustration of the two-element list, (tulip lily)
,
made from two cons cells:
--------------- --------------- | car | cdr | | car | cdr | | tulip | o---------->| lily | nil | | | | | | | --------------- ---------------
Each pair of boxes represents a cons cell. Each box “refers to”,
“points to” or “contains” a Lisp object. (These terms are
synonymous.) The first box, which is the CAR of the first cons
cell, contains the symbol tulip
. The arrow from the CDR of
the first cons cell to the second cons cell indicates that the CDR
of the first cons cell points to the second cons cell.
The same list can be illustrated in a different sort of box notation like this:
___ ___ ___ ___ |___|___|--> |___|___|--> nil | | | | --> tulip --> lily
Here is a more complex illustration, showing the three-element list,
((pine needles) oak maple)
, the first element of which is a
two-element list:
___ ___ ___ ___ ___ ___ |___|___|--> |___|___|--> |___|___|--> nil | | | | | | | --> oak --> maple | | ___ ___ ___ ___ --> |___|___|--> |___|___|--> nil | | | | --> pine --> needles
The same list represented in the first box notation looks like this:
-------------- -------------- -------------- | car | cdr | | car | cdr | | car | cdr | | o | o------->| oak | o------->| maple | nil | | | | | | | | | | | -- | --------- -------------- -------------- | | | -------------- ---------------- | | car | cdr | | car | cdr | ------>| pine | o------->| needles | nil | | | | | | | -------------- ----------------
See Cons Cell Type, for the read and print syntax of cons cells and lists, and for more “box and arrow” illustrations of lists.
Next: List-related Predicates, Previous: Cons Cells, Up: Lists [Contents][Index]