From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED!not-for-mail From: Drew Adams Newsgroups: gmane.emacs.devel Subject: RE: Predicate for true lists Date: Mon, 4 Jun 2018 19:57:31 -0700 (PDT) Message-ID: <951fa1f9-7e9f-4870-a377-930b91a44e05@default> References: <87fu3vdjjk.fsf@tcd.ie> <87bmcqhhsf.fsf@tcd.ie> NNTP-Posting-Host: blaine.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Trace: blaine.gmane.org 1528167354 26264 195.159.176.226 (5 Jun 2018 02:55:54 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Tue, 5 Jun 2018 02:55:54 +0000 (UTC) To: Paul Eggert , "Basil L. Contovounesios" , emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Tue Jun 05 04:55:50 2018 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by blaine.gmane.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fQ28T-0006jB-Av for ged-emacs-devel@m.gmane.org; Tue, 05 Jun 2018 04:55:49 +0200 Original-Received: from localhost ([::1]:42865 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fQ2Aa-0000yu-EE for ged-emacs-devel@m.gmane.org; Mon, 04 Jun 2018 22:58:00 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:36840) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fQ2AN-0000xp-A3 for emacs-devel@gnu.org; Mon, 04 Jun 2018 22:57:48 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fQ2AJ-00060t-FX for emacs-devel@gnu.org; Mon, 04 Jun 2018 22:57:47 -0400 Original-Received: from userp2120.oracle.com ([156.151.31.85]:55292) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1fQ2AJ-00060K-4d for emacs-devel@gnu.org; Mon, 04 Jun 2018 22:57:43 -0400 Original-Received: from pps.filterd (userp2120.oracle.com [127.0.0.1]) by userp2120.oracle.com (8.16.0.22/8.16.0.22) with SMTP id w552u9LA044727; Tue, 5 Jun 2018 02:57:35 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=mime-version : message-id : date : from : sender : to : subject : references : in-reply-to : content-type : content-transfer-encoding; s=corp-2017-10-26; bh=QZjz5P6+7rcBv3RFkNE9dVs7NUdZ8qc2o3GBdPQhgsk=; b=YJtob5erC1UGZTyPCQcijpAJpFU7OpuVY93FCsJpa9QIEozs8ogu1JbqPkqICgfiqmEr Z4evCmEZaEIBrkAedoGW2LA1nPbj6fpHFy3q7EiZBc81dhx9eN0ILiyGIE4Lb1K9HHSy QXECZJtmKMib2yqoSKy4HFiwZRlMTqpCI+IitoFka6gHCJvNftracgkR2HDPrsz/fYoq Cs4tgD85fYDBsuUjCNxomjE2UUtAGog4YSHLfKjbICuR/egRWxsz/NML0wS2wYhUMzM8 TlMSyjd4XXqkMvuPnmunZbd+wyPIgoDOzalbuqbgYa0S/RN3Lvww9pu3Vuukl3W/smZh Cw== Original-Received: from aserv0022.oracle.com (aserv0022.oracle.com [141.146.126.234]) by userp2120.oracle.com with ESMTP id 2jbvype2mw-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 05 Jun 2018 02:57:35 +0000 Original-Received: from aserv0121.oracle.com (aserv0121.oracle.com [141.146.126.235]) by aserv0022.oracle.com (8.14.4/8.14.4) with ESMTP id w552vYtN029975 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 5 Jun 2018 02:57:34 GMT Original-Received: from abhmp0010.oracle.com (abhmp0010.oracle.com [141.146.116.16]) by aserv0121.oracle.com (8.14.4/8.13.8) with ESMTP id w552vX7F004306; Tue, 5 Jun 2018 02:57:34 GMT In-Reply-To: X-Priority: 3 X-Mailer: Oracle Beehive Extensions for Outlook 2.0.1.9.1 (1003210) [OL 16.0.4690.0 (x86)] X-Proofpoint-Virus-Version: vendor=nai engine=5900 definitions=8914 signatures=668702 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 suspectscore=0 malwarescore=0 phishscore=0 bulkscore=0 spamscore=0 mlxscore=0 mlxlogscore=653 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.0.1-1805220000 definitions=main-1806050034 X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x [generic] [fuzzy] X-Received-From: 156.151.31.85 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Original-Sender: "Emacs-devel" Xref: news.gmane.org gmane.emacs.devel:226020 Archived-At: >From (elisp) `Cons Cells': Also by convention, the CDR of the last cons cell in a list is =E2=80=98ni= l=E2=80=99. We call such a =E2=80=98nil=E2=80=99-terminated structure a =E2=80=9Ctrue = list=E2=80=9D. ... For convenience, the symbol =E2=80=98nil=E2=80=99 is considered to have =E2=80= =98nil=E2=80=99 as its CDR (and also as its CAR). That just says: (null (cdr (last xs))), which is (and list (nthcdr (1- (safe-length xs)) xs))).