readlist(): Got rid of unnecessary variable.
read(): Extra parameter to complain on EOF.
Dotted lists.

They use standard dotted list syntax, with an extension (shared by Guile
and probably some other implementations) for the degenerate case of zero
things before the dot:

  (. foo)

is equivalent to

  foo

(The main benefit of this is that it simplifies the reader.)

Dotted lists are never used in The Little Schemer.  They break The Law
of Cdr and The Law of Cons (which both say that a cdr must be a list).