>From cdeb4497a8539b9b2ab4542554af834d3d1a97a5 Mon Sep 17 00:00:00 2001 From: "Basil L. Contovounesios" Date: Mon, 9 Jul 2018 16:25:12 +0300 Subject: [PATCH 2/3] Refer to "proper lists" instead of "true lists" * doc/lispref/lists.texi (Cons Cells, Building Lists): * doc/lispref/sequences.texi (Vector Functions): Use the more popular term "proper", rather than "true", to qualify nil-terminated lists. For discussion, see the following emacs-devel subthreads: https://lists.gnu.org/archive/html/emacs-devel/2018-06/msg00112.html https://lists.gnu.org/archive/html/emacs-devel/2018-06/msg00138.html --- doc/lispref/lists.texi | 21 ++++++++++++--------- doc/lispref/sequences.texi | 2 +- 2 files changed, 13 insertions(+), 10 deletions(-) diff --git a/doc/lispref/lists.texi b/doc/lispref/lists.texi index 57cefeac96..b7bb3cf6be 100644 --- a/doc/lispref/lists.texi +++ b/doc/lispref/lists.texi @@ -50,16 +50,19 @@ Cons Cells slots have similar properties). Hence, the @sc{cdr} slot of each cons cell in a list refers to the following cons cell. address@hidden proper list @cindex true list Also by convention, the @sc{cdr} of the last cons cell in a list is @code{nil}. We call such a @code{nil}-terminated structure a address@hidden list}. In Emacs Lisp, the symbol @code{nil} is both a -symbol and a list with no elements. For convenience, the symbol address@hidden is considered to have @code{nil} as its @sc{cdr} (and also -as its @sc{car}). address@hidden address@hidden is sometimes also referred to as a address@hidden list}, but we generally do not use this terminology in this +manual.}. In Emacs Lisp, the symbol @code{nil} is both a symbol and a +list with no elements. For convenience, the symbol @code{nil} is +considered to have @code{nil} as its @sc{cdr} (and also as its address@hidden). - Hence, the @sc{cdr} of a true list is always a true list. The address@hidden of a nonempty true list is a true list containing all the + Hence, the @sc{cdr} of a proper list is always a proper list. The address@hidden of a nonempty proper list is a proper list containing all the elements except the first. @cindex dotted list @@ -71,10 +74,10 @@ Cons Cells @sc{cdr} could point to one of the previous cons cells in the list. We call that structure a @dfn{circular list}. - For some purposes, it does not matter whether a list is true, + For some purposes, it does not matter whether a list is proper, circular or dotted. If a program doesn't look far enough down the list to see the @sc{cdr} of the final cons cell, it won't care. -However, some functions that operate on lists demand true lists and +However, some functions that operate on lists demand proper lists and signal errors if given a dotted list. Most functions that try to find the end of a list enter infinite loops if given a circular list. @@ -538,7 +541,7 @@ Building Lists is itself a list, then its elements become in effect elements of the result list. If the final element is not a list, the result is a dotted list since its final @sc{cdr} is not @code{nil} as required -in a true list. +in a proper list (@pxref{Cons Cells}). @end defun Here is an example of using @code{append}: diff --git a/doc/lispref/sequences.texi b/doc/lispref/sequences.texi index 777b1cbbff..62d3305fcf 100644 --- a/doc/lispref/sequences.texi +++ b/doc/lispref/sequences.texi @@ -1353,7 +1353,7 @@ Vector Functions @defun vconcat &rest sequences @cindex copying vectors This function returns a new vector containing all the elements of address@hidden The arguments @var{sequences} may be true lists, address@hidden The arguments @var{sequences} may be proper lists, vectors, strings or bool-vectors. If no @var{sequences} are given, the empty vector is returned. -- 2.18.0