From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Drew Adams Newsgroups: gmane.emacs.help Subject: RE: [External] : Re: Emacs 30.0 warning from `cl-pushnew' and `memql' Date: Thu, 29 Dec 2022 22:41:53 +0000 Message-ID: References: <878ritgaty.fsf@dataswamp.org> <87o7rprvia.fsf@web.de> <87zgb913fg.fsf@dataswamp.org> <87ilhveo2s.fsf@web.de> <877cyafzit.fsf@dataswamp.org> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="7188"; mail-complaints-to="usenet@ciao.gmane.io" To: Emanuel Berg , "help-gnu-emacs@gnu.org" Original-X-From: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane-mx.org@gnu.org Thu Dec 29 23:42:50 2022 Return-path: Envelope-to: geh-help-gnu-emacs@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1pB1bt-0001en-28 for geh-help-gnu-emacs@m.gmane-mx.org; Thu, 29 Dec 2022 23:42:49 +0100 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pB1bE-0003Vq-9E; Thu, 29 Dec 2022 17:42:08 -0500 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pB1bB-0003VU-EL for help-gnu-emacs@gnu.org; Thu, 29 Dec 2022 17:42:05 -0500 Original-Received: from mx0a-00069f02.pphosted.com ([205.220.165.32]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pB1b9-0004c1-8b for help-gnu-emacs@gnu.org; Thu, 29 Dec 2022 17:42:05 -0500 Original-Received: from pps.filterd (m0333521.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 2BTJ05jJ027436; Thu, 29 Dec 2022 22:41:56 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=from : to : subject : date : message-id : references : in-reply-to : content-type : content-transfer-encoding : mime-version; s=corp-2022-7-12; bh=oBsHqwPAy9W8kHQwPv6XabvDSyuO3cy9ml2kpS8hS58=; b=NzpaM/ugIKjKgs2k2j7V/TWJ4ErvFHRehgzzmPOddv4TCRqZNFu9ITvukoeS2l4w/Bdl gFd5cXHbBfYtdHtGXnOcW3ryAkHLYjsnEQbgKcq0Nk0w7HKv22O9bg7VXZLljfAW/4mw SSYzgSADe9FWg9V7S6/KDNN8YgAtdaOJ5eVHN/J2BUEER/JaTth38dmRPLEl5YgjlGyz r+L3AZ2NHXPFeSCq0DwCeNSX21kN8ZXzpBD6CqBQe8t9RaT/i71vn9lC92Ul3L2+g2yP 4304xt6peRio7hEeYFAfcrNUIUqm6A0MBMhuv6mtCsdjXw4w/clPAJ3eC24NWfyNHAwh 6g== Original-Received: from iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (iadpaimrmta02.appoci.oracle.com [147.154.18.20]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3mnrbb7h01-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Thu, 29 Dec 2022 22:41:56 +0000 Original-Received: from pps.filterd (iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com [127.0.0.1]) by iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (8.17.1.5/8.17.1.5) with ESMTP id 2BTK02Sq018884; Thu, 29 Dec 2022 22:41:55 GMT Original-Received: from nam02-bn1-obe.outbound.protection.outlook.com (mail-bn1nam02lp2049.outbound.protection.outlook.com [104.47.51.49]) by iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (PPS) with ESMTPS id 3mnqve5fkn-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Thu, 29 Dec 2022 22:41:55 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=bS8gmBGRqdD/MX2oRA2+cwBcln7wGtBWj4pY3vyUvZldiVd6C4jK5p2yZLoFjUQqgy0bh77BcO2u3hBEQwKpdvcIx1dhwP44/R/Q92wA254B0ioo87XNQcl+096XA9x6qOv/m7+FXJkRA+PwaE70LeqffA/5e4rF7x9rC0u4TaBaZI0n/Uh4rMW65isHXMr/tBxxaF6rO1D+geoFwaSafP3IE2fhn8VICYZc7z0InPSy+TKo6cZs9t6sWNU+7OkVk91bKaG9aMTex/cSfeydMrDWl+1o/zBrF3G6CoTd6l8dgQYaNyhwLyZwREPX1djvvpA1RVk2RBJL0ypwTqJvjw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=oBsHqwPAy9W8kHQwPv6XabvDSyuO3cy9ml2kpS8hS58=; b=k8S4qYBmjkk5GEhoViNPe+sc37m3RHWcHilPQEBJITYp00zj8kXyurjgNGk4c/lO0yiM80inV6Wx4GtZY4jF6QdRN1JhwZD2tWCf+VnhYfDHj+59ppSAxUhuTXO4nvm6kUwWjHUGpqkoHna+tUDZoTXbsy6SJQ02eW1PxgdWbpSzEDOtTS1Y0KakRbekAvqAbbCmcYHqwq0bD7FqAhPMwaDX2sGUuS0M2MeURUZnY/2BrWqnhzXe6GVM8sy8EXQ9e6fBP8TMf6wA3F7RmP3cnJIGKG3OQyQ1S6Hxj44vHcIcsQJAxdS6dcUBY6Ks0KgjTSZqinem2L1CiuC2BZ/YtQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oracle.com; dmarc=pass action=none header.from=oracle.com; dkim=pass header.d=oracle.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.onmicrosoft.com; s=selector2-oracle-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=oBsHqwPAy9W8kHQwPv6XabvDSyuO3cy9ml2kpS8hS58=; b=t8ohwqTC7lUwaS4KxFVl0WgJFWGybRarHDJQ9lv5fmlSMlRaGUVTtbPwIIYI55aiCAVZs/Cz5TJ6dVUaqnFGxQSdaSmWxbPLaS8ZvdUjhS3nXX9W2Yo1e0Qs4PJXGcSpdni01iSNeKwg1MlDG2Yj5CAJVV+yLik3VUHjVzYVpq0= Original-Received: from SJ0PR10MB5488.namprd10.prod.outlook.com (2603:10b6:a03:37e::19) by DS7PR10MB7225.namprd10.prod.outlook.com (2603:10b6:8:ea::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5944.16; Thu, 29 Dec 2022 22:41:53 +0000 Original-Received: from SJ0PR10MB5488.namprd10.prod.outlook.com ([fe80::7c3c:e53d:5276:ef29]) by SJ0PR10MB5488.namprd10.prod.outlook.com ([fe80::7c3c:e53d:5276:ef29%8]) with mapi id 15.20.5944.016; Thu, 29 Dec 2022 22:41:53 +0000 Thread-Topic: [External] : Re: Emacs 30.0 warning from `cl-pushnew' and `memql' Thread-Index: AQHZG1XVIxNjn1SszkqCrTIw5di6+K6FdDXg In-Reply-To: <877cyafzit.fsf@dataswamp.org> Accept-Language: en-US Content-Language: en-US x-ms-publictraffictype: Email x-ms-traffictypediagnostic: SJ0PR10MB5488:EE_|DS7PR10MB7225:EE_ x-ms-office365-filtering-correlation-id: 0a6758ff-e35a-4432-f5b7-08dae9ede1ed x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: Y7UPmDRBBekYlm8WQEZlLdg1WhoxzJIJvMkJ+idppDudS7ynrWZEF60QgWUYFNNdkgxiustuLHQ33POWcwNcmjiRQOtlGJtREIXPlH4GB9Max6Y1TI5d0PHz/G9ah4hFO82CzC1G+PPXhQUX3pZipzqqtFdc97XmUBw9dUIsrqGUytbJfYGmZzWJEE3tPm1KZd1gaL0V96A6dexWBtPbw3p8q5Nh/4R/mxssiuzi4dfJCxeImtkWoShVQkH0owxuzUH1KdXK6QYfvi75eHQhikK2/qEk+tZ15GxWW11wqZ/CLCn3JX0l8rHxPIl1Y3tJ83bQpEgfvRzfMTJaNKGiJnLmAiWIDMjt/1OMnMlVZas9RADaC0KePebfPbJYEpvC0RnshYeecHPizt8yz6QoSI+xrZ5dgkKIh+iiI3xZntZFXjT7NGsMv+WrD3AGMHBXPLtemTXloetZbjE1dONBwMjYH1IMWmhfJV8lOEXiUMpbZyFL4Egp4z1wVBezwf2GlbKvu0e0SuuNYIQTjrr4yEnLub8YboJoR6zXcO3P5utOoTHPIN/LBTLbQbY5vjhkWZZAkjpraYsHibTWlzHM3C2B3oumzvYzyQ/thmlOUru9NGQWBANjF8v5n5MEBcHmVZVN915wmm60DhVzF5N5rYlqrX5xFK62b2UMh2Pm2vn0FqGWTHyu6HjFRyMQlUIaZbGcuTvhDYI7c5dzz3yhWqAmF5AS+WEqPSGXd1d8k9A= x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:SJ0PR10MB5488.namprd10.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230022)(366004)(136003)(376002)(346002)(39860400002)(396003)(451199015)(64756008)(8676002)(52536014)(66476007)(66446008)(66946007)(66556008)(76116006)(8936002)(5660300002)(41300700001)(6506007)(110136005)(33656002)(2906002)(316002)(44832011)(86362001)(55016003)(7696005)(71200400001)(38070700005)(478600001)(38100700002)(9686003)(186003)(26005)(122000001)(83380400001)(81973001); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?us-ascii?Q?2VT1hry9rrvUSwBt3qWT/AXWMfWhqeu/b2mf6TH6fMzhBI9BpZPogHbJB3YU?= =?us-ascii?Q?d3v5bJrVkFrW5zQ8JxGA6rNKuJmbYGPZwboTKdTZpYs3wHNiDsJ3J7fosmSw?= =?us-ascii?Q?CtTi849JxlI2fSN/qCsMT7GkT4KfVTSUex0ZKe63rVJeU/5g81RhFOSfpaX2?= =?us-ascii?Q?sd+c0DNWT9RKrBIMdvpwwW9/U0/pRnT1bR9dIFJNvpkGmgexgbsxbNmqAXpa?= =?us-ascii?Q?U0I1eolFSVXWgDNUnYv84PMzpUYdwBMd6knE0BAJgRlb8Dj9Dn1ByeFW7Zxz?= =?us-ascii?Q?DwflDE53SKfK1Yx4xx8itrGkZ8d2Os9SBVYd2R+g7+rC2KkjAOuyoFoZjg7d?= =?us-ascii?Q?MQ59QrHY1KZ8tKecJHZ2YnvhwxmVN5AeqE5rrVrCKSAXf1k/YyphGWnrMKMc?= =?us-ascii?Q?nLUz9MtKpRFssN/eOzQlfoI7taN6oxmj7lFKZvdM5M7asCqVXeKwTZtU50Ct?= =?us-ascii?Q?hIGdRRPYvq9dbYBkdGI1hiN7pIamVamvpsZCSBDJ7+ki1LGxtvyu0J7qi8Cf?= =?us-ascii?Q?bua+SI4uovhYta1ikMJmTjnfEmZPjVinzIkcbswm4XVHY/PNRqVoK7IECEkS?= =?us-ascii?Q?q9aZykzARxSx8DBC4YXqrfhg/RKAlQ+Mkf2LNXA09WNenFd4WccnDnUkl+dH?= =?us-ascii?Q?/L X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: SJ0PR10MB5488.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 0a6758ff-e35a-4432-f5b7-08dae9ede1ed X-MS-Exchange-CrossTenant-originalarrivaltime: 29 Dec 2022 22:41:53.3180 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 4e2c6054-71cb-48f1-bd6c-3a9705aca71b X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: cAMLEN1EtCbgilplaflk3GLQ62vM+La1QCoSdkDI1WG26usI1SSa1iBSBvYD3WAgawNwZzijaFRtkpSYwY/5ww== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS7PR10MB7225 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.205,Aquarius:18.0.923,Hydra:6.0.545,FMLib:17.11.122.1 definitions=2022-12-29_12,2022-12-29_02,2022-06-22_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 mlxlogscore=975 suspectscore=0 bulkscore=0 mlxscore=0 spamscore=0 phishscore=0 malwarescore=0 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2212070000 definitions=main-2212290189 X-Proofpoint-GUID: BPZBm8qsSZCXifnmSzom1G_1uMIQjSnS X-Proofpoint-ORIG-GUID: BPZBm8qsSZCXifnmSzom1G_1uMIQjSnS Received-SPF: pass client-ip=205.220.165.32; envelope-from=drew.adams@oracle.com; helo=mx0a-00069f02.pphosted.com X-Spam_score_int: -27 X-Spam_score: -2.8 X-Spam_bar: -- X-Spam_report: (-2.8 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: help-gnu-emacs@gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Users list for the GNU Emacs text editor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane-mx.org@gnu.org Original-Sender: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane-mx.org@gnu.org Xref: news.gmane.io gmane.emacs.help:142049 Archived-At: > Applicative order AKA strict evaluation: a function is > undefined if any of its arguments are. >=20 > So in practice, that means they are computed first. >=20 > And that makes sense! Since a function f(x, y) is very much > a function of x and y ... Uh, being a function of x and y doesn't imply that both x and y always need to be known (calculated). `if' is a function of all of its args, but in some cases it need not evaluate all of them. Same with `*': if one of the args is zero then no need to calculate the others. Etc. With normal order evaluation you can evaluate only the args that are needed, based on what those args are. For instance, with applicative order you can't define `if' as a function. With normal order you can. With applicative order some calculations never end (bottom), while the same function definition might end with normal order. And besides never ending, with appl. order you can do a lot of unnecessary calculation - for args that the function doesn't end up using. In general, applicative order is a kludge. But it's a simple one, and generally efficient. To make normal order etc. evaluation efficient you need to make it _fully_ lazy: don't copy or evaluate the same expression multiple times, but use graph reduction (sharing) instead.