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.devel Subject: RE: [External] : Add a function for building sort predicates Date: Fri, 2 Feb 2024 22:30:13 +0000 Message-ID: References: <87msskw1u8.fsf@web.de> <87o7cyzl68.fsf@web.de> 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="38959"; mail-complaints-to="usenet@ciao.gmane.io" Cc: Emacs Development To: Michael Heerdegen Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Fri Feb 02 23:31:10 2024 Return-path: Envelope-to: ged-emacs-devel@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 1rW23x-0009ye-VE for ged-emacs-devel@m.gmane-mx.org; Fri, 02 Feb 2024 23:31:10 +0100 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1rW23F-0006s5-4O; Fri, 02 Feb 2024 17:30:25 -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 1rW23B-0006rp-7x for emacs-devel@gnu.org; Fri, 02 Feb 2024 17:30:21 -0500 Original-Received: from mx0b-00069f02.pphosted.com ([205.220.177.32]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1rW239-0007du-6c for emacs-devel@gnu.org; Fri, 02 Feb 2024 17:30:21 -0500 Original-Received: from pps.filterd (m0333520.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 412Jx0ON017582; Fri, 2 Feb 2024 22:30:17 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-2023-11-20; bh=1LMXtIYuexXYGjvD2tSjuOSCbgaxnQuRpFO6rlr6P54=; b=OxmWNEKViL0X67nCO337Gnd22oc/uT/bqDRLWA19SJ/zNy2UP4LLMpK9e/5DlmaoJ9Xm eZo6k/uiv1YxW6j2Nv2I0wgJMkWy7ZsbopCsWAlVm29nxYae6lhNhsR4PFKyghU78sa+ Ht78+W3WOkUGviMJVqVVTWjzT7NXCh8jb0vrNbv0pt7Ez9HJ0l7wkYHQX8y1EnClmE/7 07PTrQW9nTTiYeWcdIHKbnCwf8BAoyV0Tb/VMjLNwyv7vpqLI/f4rvf1PHkJtLB0EOqK 45ihcNJ7F6HqfAWhladhdO7qjbS4d39lJTNmQMYsNyXVpgZk9Hyhgqe64SD+L5cvIgC/ 7Q== Original-Received: from phxpaimrmta01.imrmtpd1.prodappphxaev1.oraclevcn.com (phxpaimrmta01.appoci.oracle.com [138.1.114.2]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3vvsve0vm8-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Fri, 02 Feb 2024 22:30:16 +0000 Original-Received: from pps.filterd (phxpaimrmta01.imrmtpd1.prodappphxaev1.oraclevcn.com [127.0.0.1]) by phxpaimrmta01.imrmtpd1.prodappphxaev1.oraclevcn.com (8.17.1.19/8.17.1.19) with ESMTP id 412M5Qi2024505; Fri, 2 Feb 2024 22:30:15 GMT Original-Received: from nam10-dm6-obe.outbound.protection.outlook.com (mail-dm6nam10lp2101.outbound.protection.outlook.com [104.47.58.101]) by phxpaimrmta01.imrmtpd1.prodappphxaev1.oraclevcn.com (PPS) with ESMTPS id 3vvr9ch1g4-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Fri, 02 Feb 2024 22:30:15 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=jaOq0DjeiY2ufzXK+H+HQm9IGJJHCDIMeNPHa8VQVuU7XSRXYe7u/nZMhPTQ1DXbfUVY98Lgl3HLL67TAtqGWuRDzhR4t33BTkHVWvgkgtVeLciVGT0X++Y8JcIbr1QQ4Tz5gXNtsBB9RO9pqcr4ONB7Rhj65ZmFwCgNi9087LU9kXtZ9dIDWUC7BvjemraaVBr+gpvyTr2wHW1zoAboSEfFBCMYViL/0nST6/ZE+AYWmcU4RMj7xxreZVMYz+LPA/n+1f0NjqnroDZOGDBqU3msx5zUZX+be9gVnxPlEG7dwpPe1DIocPOU4XMfHNUL4pLDcE7ayJGBOxvKb9aK2w== 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=1LMXtIYuexXYGjvD2tSjuOSCbgaxnQuRpFO6rlr6P54=; b=H/sYp9FHvkOlaUbL0mJ7bl5/DM3vKNmj23iqrf78Mncugj2/YXUCxtcUtwIWSru0s3GdpENJVwXO44jFr7F+lXtE85TEuDABRh0XJmryuhpDs06FFe30FQAaZSG2QXk0w+9On88TP494ZGQ5G66xvPKq5cjWBmcrljlERoDF2S9azpFTfa64WHkYhFwD/OhH5dD5xzukEDUgMigdegaNcB3DmiV4pXZ2aVPH1A13ZSbxGimSNCXNMvMowYElQ9dUjZHbGLvauEWZswJKNLLAAsMezHD6UXIwfSiXwDECJvya3AtfiOJ2tXlThfpph2cT+Mg69h402TA3Je+8NACpGA== 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=1LMXtIYuexXYGjvD2tSjuOSCbgaxnQuRpFO6rlr6P54=; b=i14V0mCC3kmTDNpbb2uyD+8JL6zny0bqF/Ftfo1AjiPAeQaUWX9d0tP5TZT9/2tPGeinwBmMoiYya/SPUNlHfmPrpemBE0eBxFEASJ32D+BEmb7gkMQrSVc+1OhTFk9ENWc+RpKQ3o23cKt0XCMldql8sLw9GzNnxSRC59mtDXI= Original-Received: from SJ0PR10MB5488.namprd10.prod.outlook.com (2603:10b6:a03:37e::19) by DS0PR10MB7149.namprd10.prod.outlook.com (2603:10b6:8:dc::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7249.26; Fri, 2 Feb 2024 22:30:13 +0000 Original-Received: from SJ0PR10MB5488.namprd10.prod.outlook.com ([fe80::7eb0:e361:caf4:a410]) by SJ0PR10MB5488.namprd10.prod.outlook.com ([fe80::7eb0:e361:caf4:a410%4]) with mapi id 15.20.7249.027; Fri, 2 Feb 2024 22:30:13 +0000 Thread-Topic: [External] : Add a function for building sort predicates Thread-Index: AQHaVhM7rQphSF6dsE2K7EPgWtr12bD3j8yw In-Reply-To: <87o7cyzl68.fsf@web.de> Accept-Language: en-US Content-Language: en-US x-ms-publictraffictype: Email x-ms-traffictypediagnostic: SJ0PR10MB5488:EE_|DS0PR10MB7149:EE_ x-ms-office365-filtering-correlation-id: 86d3e16d-1680-4cd3-b29e-08dc243e85f1 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: FeakDMab+AsqQ6jaZF9SgW81P4QoxpTSNhDa3mkg/QgdxjYDPa1jxcDVQhrJmpZe/Rhp7k0U5Mq3rV9rdqAcciknt+cUawByyaPaGB5w5pDr4IeeZSIUiNyF3DYomkO0CKa7TylG+eWAwIMbXT48IQrFmAO0xxmtpy3olPMfVw6wCFkt0yZ4V64qUUyS8YGzGytNWMh0xExkKudaHYSLp30ZfzrVX5LQcB8T4THsvKc9u7tCmfe2Yv93LQ8raPbvCkdfkmjR1yWmZ+MhkmjHdKcelSkFSBhs6Tu8zlM08NsejM8kBBodUbzAnn4V4HqEOzwtqYc7T4xx0624AAp+TAf93G7mFbe5tVwq7ssfmr9PupTjTDk95Nwb/gTUW7Hbjt834rKOHwh3a3G+Pcl0/wl02n7/7xSIlcOgtvxk6Khn/I1PLJUF+hwAt2SFlZn/3IreFe1WPauWexOEo/UvIAIHDjToe4urxo6GX9AluPtwV3rnLuOtXXInqLcQHN4AgngBahon+JFTwHodT3eZHih9thbSi+w51qFfnak4QZXzAQCYeqiLeK+bL4vRYPf6/bUYVd1dKMZ+XVINRpHEf8i+TQW/J3sg5BFsS5eaHJ0= 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:(13230031)(396003)(136003)(39860400002)(366004)(376002)(346002)(230922051799003)(64100799003)(186009)(1800799012)(451199024)(4744005)(44832011)(2906002)(5660300002)(41300700001)(86362001)(966005)(38100700002)(33656002)(478600001)(6506007)(38070700009)(122000001)(7696005)(71200400001)(9686003)(26005)(66446008)(52536014)(316002)(66476007)(4326008)(8936002)(8676002)(6916009)(66556008)(66946007)(55016003)(76116006)(64756008); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?us-ascii?Q?xmdlWZ7TOz9hLzs1qh1GPK0NvEkhJBh/hP3CvN49mDDLO4ZLWeXx1DnZuKwz?= =?us-ascii?Q?p7iYz9HbZ+czWgHU3F8mjLo/IDibgb4z49fwEWpMfSCXGkX/AuNKPa2/h8Iv?= =?us-ascii?Q?MMEyPbINd52JxqTu4n7qELZ/1bEXX3jliSu6LgEZNkQGNyAikr1w8t4EBPyb?= =?us-ascii?Q?a3azKChgosIhQ7H7F6yc4+kWBW3GIBFS0jgmeuJhUSY24dn+3MYLW8olqxEX?= =?us-ascii?Q?tJ4Jq9V0M6EFef9cPlmUZjXFHhfA9W7N/ex7vVcboOz4VrObajDy+Uz/g3fL?= =?us-ascii?Q?Uy83sKrVwXtkLDpKpHeMyxr2F3PpZG3qMjiHsvhHAkKmr7VyTo9fp7a14vvD?= =?us-ascii?Q?Q+u9nJUa6jpcjayXoHbyHfsnOSNYBUZhOCqEX0pWi0gclVHXcT4hewVhXcAF?= =?us-ascii?Q?8tOGFYd4DIQSSOW5XB98UmvZRuTJhRv2FI+4G/rbW7PzCqyjpnJqL6CH4wg4?= =?us-ascii?Q?ge2Qcqmdj8JthZRoabOkhcVy7VuhlWsELzHbYcnblq9s2j0tMRoFe+8Onq1h?= =?us-ascii?Q?y3Nc8++Rc1zL3lX5QoHbohLNv6QwpnxihT/IV8P+7PytjIEEuDLPFMfMCOIa?= =?us-ascii?Q?mdG3YetqrrYoPyi76wlzgl5sPj91HjkblWwSST6EMy0l4dOAp/vm0QszT7+F?= =?us-ascii?Q?l7 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: G8QjQMfJjiKeAm5GiLmWXC7FlkRUGuH2ngWdV1xHMeqxHmKyRIcElQV6p55ECwb8CqMiLvfdF9llinUM5521/yuN4Aup4fLW06wazRFDcXifgIUjgnwNs6l7rxib1fn+LXyxICs4pCG5/2HR7Cit3iOEuE3+hSrpyHFchnPI8sZxrJHspdkUlXHdEPtT8uAHk+kZhHENRaVRWaioWnYnXdzLwMRZmmti34McjIHc1hmvi76QgvksT23Bf0J8otGRD74e2CSQ78/ZlmQpQAp6eByYnC0kJPErbRYCpRRCCHaQ6A9n1VAokyL/TcOg7OhFTfP6k3WCVw37f408HZnrBLUtNUOjKQ/9rC1m2f1QxGV9aTXpGUYU1hcUuYX7PSWdVLHv5/0GzxVJa+a/6pg6AP7u97rMTgfzgT4llv68qElJIe+FpMAnqX8KBQqxBKyqBdWwhKSyBVo1o5sq/Fp/q/5PSpCLF1Tg8BGROk6R17X5sGczZIDtYUOwLiPhnpDU8oHmr3Xp7IvojbvDNPXpsgl0aCrPjUFdfG279SXYuYY2h4d72eezI1CTpZ0dDDMaKJwMZRry9fwhFm6hkCZczFOC2bBrMINUKxplmbOz7cA= 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: 86d3e16d-1680-4cd3-b29e-08dc243e85f1 X-MS-Exchange-CrossTenant-originalarrivaltime: 02 Feb 2024 22:30:13.2955 (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: cvBuCnQ+lfUbJrdVF+7GWTOboKZjktBHfRrLaXU2gmkBTeJyJrDQZpGWnpQZm7CYc3maoVpfh55vJVhTkv8R4Q== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS0PR10MB7149 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.272,Aquarius:18.0.1011,Hydra:6.0.619,FMLib:17.11.176.26 definitions=2024-02-02_14,2024-01-31_01,2023-05-22_02 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 spamscore=0 bulkscore=0 malwarescore=0 suspectscore=0 phishscore=0 mlxscore=0 mlxlogscore=999 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2311290000 definitions=main-2402020166 X-Proofpoint-ORIG-GUID: jsX70Tq9UCmIQ7ihGxYEcvRLFuUaj4gR X-Proofpoint-GUID: jsX70Tq9UCmIQ7ihGxYEcvRLFuUaj4gR Received-SPF: pass client-ip=205.220.177.32; envelope-from=drew.adams@oracle.com; helo=mx0b-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_H5=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.29 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-mx.org@gnu.org Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Xref: news.gmane.io gmane.emacs.devel:315781 Archived-At: > > See this for something quite similar: > > https://www.emacswiki.org/emacs/ApplesAndOranges >=20 > Thanks. >=20 > I think my approach covers all of the cases > mentioned there, at least when you specify > sort predicate definitions in the rule list > recursively. Didn't mean to suggest otherwise. I like it. The "top-level" bit of your code: (catch result ;; any rule throws 'result' when a