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.bugs Subject: bug#47992: [External] : bug#47992: 27; 28; Phase out use of `equal` in `add-hook`, `remove-hook` Date: Sun, 25 Apr 2021 04:57:35 +0000 Message-ID: References: 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="32548"; mail-complaints-to="usenet@ciao.gmane.io" Cc: Daniel Mendler , "47992@debbugs.gnu.org" <47992@debbugs.gnu.org>, "jakanakaevangeli@chiru.no" To: Stefan Monnier Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Sun Apr 25 06:59:21 2021 Return-path: Envelope-to: geb-bug-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 1laWrZ-0008MI-1o for geb-bug-gnu-emacs@m.gmane-mx.org; Sun, 25 Apr 2021 06:59:21 +0200 Original-Received: from localhost ([::1]:52794 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1laWrY-00066u-5h for geb-bug-gnu-emacs@m.gmane-mx.org; Sun, 25 Apr 2021 00:59:20 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:44450) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1laWrG-00061u-NT for bug-gnu-emacs@gnu.org; Sun, 25 Apr 2021 00:59:02 -0400 Original-Received: from debbugs.gnu.org ([209.51.188.43]:58547) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1laWrG-0005iX-GR for bug-gnu-emacs@gnu.org; Sun, 25 Apr 2021 00:59:02 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1laWrG-0004Lo-Fw for bug-gnu-emacs@gnu.org; Sun, 25 Apr 2021 00:59:02 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Drew Adams Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sun, 25 Apr 2021 04:59:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 47992 X-GNU-PR-Package: emacs Original-Received: via spool by 47992-submit@debbugs.gnu.org id=B47992.161932668516656 (code B ref 47992); Sun, 25 Apr 2021 04:59:02 +0000 Original-Received: (at 47992) by debbugs.gnu.org; 25 Apr 2021 04:58:05 +0000 Original-Received: from localhost ([127.0.0.1]:41860 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1laWqL-0004KZ-0Q for submit@debbugs.gnu.org; Sun, 25 Apr 2021 00:58:05 -0400 Original-Received: from aserp2120.oracle.com ([141.146.126.78]:33184) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1laWqJ-0004Jz-IN for 47992@debbugs.gnu.org; Sun, 25 Apr 2021 00:58:04 -0400 Original-Received: from pps.filterd (aserp2120.oracle.com [127.0.0.1]) by aserp2120.oracle.com (8.16.0.42/8.16.0.42) with SMTP id 13P4tQWx039696; Sun, 25 Apr 2021 04:57:38 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=from : to : cc : subject : date : message-id : references : in-reply-to : content-type : content-transfer-encoding : mime-version; s=corp-2020-01-29; bh=FbCXwvc8dBn9iIU5rtFMSHm62aYFBXbDmBb36NMIQ/s=; b=gu/SPhylRD2X7GRHSv7Qgifj9BWfRi1UgDAzuXx36aTf+wY5rZc2JRfJErAOXXgEEPNp yVgZvsC5ZD/H95LTTLiOKsuEJgyPB1Xw1fCOKEkxwZQvUNPbIccmaUMDVWyss2gwWsaR P7dKUiDyZJwoBBXezmtOWp6HAywwy1OwsC73uLsebrxTQYzzGLtiTvH323XbABIWfiGM /G/sAX9iqwCydSMwWpgtkdkYtisjX9WVRlxAJZRmFulKRTlHS6LOAIQ80G8azgMgL0by zXqMSi5p0w8pcJRr8WgxdY/3W7G+fy1yhlrQYPmSEgA/iV36mdx+G9hfmw+DcAYnlI7e xw== Original-Received: from aserp3030.oracle.com (aserp3030.oracle.com [141.146.126.71]) by aserp2120.oracle.com with ESMTP id 384b9n10h8-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Sun, 25 Apr 2021 04:57:38 +0000 Original-Received: from pps.filterd (aserp3030.oracle.com [127.0.0.1]) by aserp3030.oracle.com (8.16.0.42/8.16.0.42) with SMTP id 13P4u8IE030331; Sun, 25 Apr 2021 04:57:37 GMT Original-Received: from nam12-bn8-obe.outbound.protection.outlook.com (mail-bn8nam12lp2172.outbound.protection.outlook.com [104.47.55.172]) by aserp3030.oracle.com with ESMTP id 3849cbh1nu-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Sun, 25 Apr 2021 04:57:37 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=k7JzZ6hszxxTF9htXlsHeEarvuk2/q1nf1pfmXvcFsUZZXVTVroqfXic5oWo1QmouH/c3pnG/z/lnPA4DSDoCAKvMA+mDJtOBQ/ykyPahdzIWowbuwYL+UDZXd3339Zg6yy1yDvMokFQ4yfoi1MsDEDTxq1BY+Hhij7SMOLBmrtC/lB4zZHtea52HE6D7vLdvgrR2sy34ihezG43o6WnlX/gdOxyStoDbvNmakPbMXlTthJ+x14vjOnwrO+VvVaMoLFngCiPhayLgx5Az0h48AdTxSiHhXMZ20C6mRzEhOWHA+WcXw+okgRTkSM1AS9n8iVO6ClF9mR80ly7ekHV2g== 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-SenderADCheck; bh=FbCXwvc8dBn9iIU5rtFMSHm62aYFBXbDmBb36NMIQ/s=; b=ht2ELgHnRGOrMd98eOt8HaWQkjmJe1Bq/F//fTkhEA4xSoD9et9HMQBLkYwyJ4M4gmxKYRSfo/s2ThLJrKx4wW7kupx80HN1ip+4U9RO9tsn85T2gHs9EbSkWJ5c8khm6bFbZ2NWCi+tZ3upOErMV9cXIZa9gND8GAshDqN0s36gCXA0Gc1AKR06mzChpMHFxClyOGoAv+XhViSGeZ6B3aNBx8rQx3o1U25vCsnXRL5hyfdtMRPrx6Op5ZvbR+CUsrNjwDAkUOJ06VGiLItScycMXdvpPXAZOAAG60w+9/mkhsZsInf/QqXW2rT3lRODNQ9qW0nWctWzWJQ6ZRglvw== 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=FbCXwvc8dBn9iIU5rtFMSHm62aYFBXbDmBb36NMIQ/s=; b=UhZPtwoeMwgKtWmURznAjZoiEga8/+Tf46Sjm9j9mKIebfW8VOK+y1V5gJjMdmyLO/cVVgOF1Cf/nB6n/GpE4zjUTH+Spz6Ollffse7dqKlqW/Wi6gYUwEFfk1Oew94ZrJ9nrADCAXBVt48moNrCNUNx7YgaLM/gVAUKpvFPv9g= Original-Received: from SA2PR10MB4474.namprd10.prod.outlook.com (2603:10b6:806:11b::15) by SN6PR10MB2960.namprd10.prod.outlook.com (2603:10b6:805:d5::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4065.20; Sun, 25 Apr 2021 04:57:36 +0000 Original-Received: from SA2PR10MB4474.namprd10.prod.outlook.com ([fe80::2109:9725:fd4a:6494]) by SA2PR10MB4474.namprd10.prod.outlook.com ([fe80::2109:9725:fd4a:6494%6]) with mapi id 15.20.4065.021; Sun, 25 Apr 2021 04:57:36 +0000 Thread-Topic: [External] : bug#47992: 27; 28; Phase out use of `equal` in `add-hook`, `remove-hook` Thread-Index: AQHXOY+Bupoj9lhYvUC8hRwkSIh+OA== In-Reply-To: Accept-Language: en-US Content-Language: en-US authentication-results: iro.umontreal.ca; dkim=none (message not signed) header.d=none;iro.umontreal.ca; dmarc=none action=none header.from=oracle.com; x-originating-ip: [73.170.83.28] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: ce75f677-68d5-40c3-79be-08d907a6a4db x-ms-traffictypediagnostic: SN6PR10MB2960: x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:8273; x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: lLIUBCAOFFLVSGbCW6IDnms4uAQjH/dxxI+5AFJZO3wFoSuG8G1EEW0+EgTSpRQN6Mhw1eq80+Jw9soSxtg793ETvKbDpDRSsKWeqGeN+edTxnmdzRdGPUJ4rKBaGKZVBT7E/6vyKqUaqPdD9YsUBYsYHOKingiOtJbN/MUQq8XtDDngAgVKhghlbuM0jNvMBqeghwru0WwqWJ+LLoJd+GafQP7iSOBgTBtI5p20SYm0NPoJ/QsfxRZ1RrV5NjCflGSA/EbgbH9DF5P4NU2ozYvB9vP1xfqw38avtrM5SBRUH3wtDHHbvHp7wHtbJ3OVDkuHC8p6vXnvLi7GATkiIskMZ6xEIL6ilLQ9UEQ/t6WUsJNXUOwSaGvTHoAYxHY+Fh4PwcBOunxJvQckVaVE0K0kl22V+YjJP4L90FTD4PPFo3fHmxQ3S17TEAo0SBwokRio+uUa4ditxH+Zf77NXkotb+1UEEHwWNIdjmbrXRcDHvnVLRnXzMm03VPfyS/SlkzXUHC8Y7DWIrdE5a/xidNoXbbai9/2iBT94Tpu/KVTt/PU2xYj43CHBw/oCPfanKhZgDFQdLcup0kU9D/B2e3zEs6CkSVNhbonsvWXERVoBG0vYeZmIUfpRHbx/HgXAEg7vF+s7kKpdQCuepGVRw== x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:SA2PR10MB4474.namprd10.prod.outlook.com; PTR:; CAT:NONE; SFS:(346002)(366004)(39860400002)(396003)(136003)(376002)(5660300002)(186003)(8676002)(9686003)(8936002)(38100700002)(71200400001)(7696005)(6506007)(44832011)(52536014)(478600001)(64756008)(66446008)(33656002)(55016002)(66476007)(296002)(66556008)(66946007)(26005)(316002)(4326008)(86362001)(122000001)(54906003)(2906002)(76116006)(6916009)(81973001); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata: NKm3nxnseEeCjGi9q4REQMqBCpXhm7/7Kh0nMdKBxJ87cJyaZLjQx1SS2SSeQLKSeugYBnCM7r9L0jO8xqJiQiFhG+8PRRj9fAdyfBoY8z6W2BlSCDOmXsLnZ78dAO3tHKJRJ3v94Se8W/sGFJhkelb5UMHxc/f4jiIZX40c1uCmRD7driNPNFM2LsC3Cu2SW7xbmnIEc50TqBhoPZxkx3+KRN6eCmoe4z3wiQ8AJyenHY7ztI9VrJRT4+zoKh2BrqgS9E+VjGk88m8yMFYN0geP7M5F9CXHYtcbRSGMjsoA7LUwgPSJ0ShGLanPz3guTssUm8iORVC2QtnE8XF29G04YfCBCfzaNSwCtl1WyxV5YfXouMpJ1wBBfa395VLAutkjfMBHQ7LiGoE6OVFjuElDJYVbYO1bsrY1+OurxiJP9YTStPfXzjOh6TvIMO/FvIEIU521NUaJ7YDtxDP15810D7hPOBEqMmTuhU80b2IjecvVmMn+U3TripDtBvwbzCseiZQWCuklNndNZzIr6QasbnYe6ZhvkWmfiwRl7otrZGx9umuyf/Y4kin5MxvlAuX2Db5xgk8JxSDiDnt3Wzkrrh8iicL0Za8VRnA0rGdwqF//9XfoJ1KAOOmcrb53mwcZsK9HPRNwyFwLT9mOUvoSTEOBgR5xNCUM7BCDsxXSrk8AxukGvsSUOw+VQ7ZraY7IG6gRvzfDayG+MgMWQ7Bs5H99oXe6aNSLB7dd0/GFaQVz1b4wIj6GF/xy 56llPCbjHG2BYMNuHpudPWMrwct5Hmrrv2Y8JM3nxsioWlW+phs9k/4Vn4k2MsI5Trtxz9FIcfG2Gy+bt8QLsLsBFGjhYFJ6py x-ms-exchange-transport-forked: True X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: SA2PR10MB4474.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: ce75f677-68d5-40c3-79be-08d907a6a4db X-MS-Exchange-CrossTenant-originalarrivaltime: 25 Apr 2021 04:57:35.9944 (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: PrLQjlbUBEleQD2k3s5EVv7knqvgmeX7LHx0iqVtuRe61hwLdR59Rd49Jm6usSAvHpCYv6Yr8g2qC8QsCpOKWQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN6PR10MB2960 X-Proofpoint-Virus-Version: vendor=nai engine=6200 definitions=9964 signatures=668683 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 mlxlogscore=711 suspectscore=0 adultscore=0 mlxscore=0 spamscore=0 phishscore=0 bulkscore=0 malwarescore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2104060000 definitions=main-2104250036 X-Proofpoint-ORIG-GUID: cX06faR82JNgC346dJ4gc2fligXcQ9wW X-Proofpoint-GUID: cX06faR82JNgC346dJ4gc2fligXcQ9wW X-Proofpoint-Virus-Version: vendor=nai engine=6200 definitions=9964 signatures=668683 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 adultscore=0 lowpriorityscore=0 mlxlogscore=999 malwarescore=0 bulkscore=0 suspectscore=0 spamscore=0 priorityscore=1501 clxscore=1015 impostorscore=0 phishscore=0 mlxscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2104060000 definitions=main-2104250036 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Original-Sender: "bug-gnu-emacs" Xref: news.gmane.io gmane.emacs.bugs:204845 Archived-At: >> > > you'd make it no longer work at all for >> > > interpreted lambda forms (except rare cases where they >> > > might actually be `eq' - e.g., same list structure)? >> >=20 >> > It would still work for lambda forms, just differently (arguably, >> > in a way that's more often right than the current way). > > > > Please elaborate. Comparing lambda forms using `eq'? > > Not clear to me how that works in the general case. > > > > (eq (lambda () foo) (lambda () foo)) ? > > > > I don't see that it works at all, let alone works more > > often than the current way: > > (equal (lambda () foo) (lambda () foo)) >=20 > IOW, you don't have an opinion either way on the=20 > proposed change of semantics. Seems to be your favorite way of (not) communicating: saying that I have nothing to say. How about actually elaborating: Tell us how using `eq' would enable the interpreter to test equality of lambda forms in the general case (not shared list structure)? How would using `eq' "still work for lambda forms, just differently (arguably, in a way that's more often right than the current way)"? Forgive me for not understanding what you mean by that. ___ As for my opinion on the proposed change: I haven't seen a good argument for using `eq' instead of `equal' to test for equality in `add|remove-hook' (in the code: `memq' instead of `member'). I gave good arguments for continuing to use `equal'. Emacs users use the Elisp interpreter interactively, and they do use lambda forms with `add|remove-hook', even though that's not a great idea. `eq' doesn't cut the mustard at all, for such use. Barring a good argument for using `eq', I'm not in favor of such a change. Given a good argument, I might change my mind. Clear enough?