Graham's notation correctly but perhaps too subtly conveys an
important distinction between
nulltests for an empty list.
endptests if a list is empty.
What's the difference?
endp will signal an error if
passed a non-list.
This actually makes
endp a better test in most loops
that step through a list, because it will catch non-lists
endp is a relatively recent addition to Lisp and is
underutilized by almost everyone, including myself.