Now that you understand Scheme lists and simple quoting, I can explain
why the null pointer is called "the empty list," and written '().
Consider a list foo of three elements:
'(1 2 3)
The cdr of that list is a list (2 3). We could write
a literal list like that as '(2 3)
The cdr of that list is a one-element list, (3).
We could write a literal list like that as '(3).
The cdr of that list is a zero-element list, (),
that is, it's the empty list. We could write it in quoted form as
'().
Given the way that Scheme lists work, a list of zero items is
the same thing as a null pointer, and it's natural to for Scheme
to print it as a list with zero elements, ()---and for you
to write it as a literal with a single quote, '().