Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:116972 Return-Path: Delivered-To: mailing list internals@lists.php.net Received: (qmail 27551 invoked from network); 2 Feb 2022 13:50:19 -0000 Received: from unknown (HELO php-smtp4.php.net) (45.112.84.5) by pb1.pair.com with SMTP; 2 Feb 2022 13:50:19 -0000 Received: from php-smtp4.php.net (localhost [127.0.0.1]) by php-smtp4.php.net (Postfix) with ESMTP id C9D7E180381 for ; Wed, 2 Feb 2022 07:04:48 -0800 (PST) X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on php-smtp4.php.net X-Spam-Level: X-Spam-Status: No, score=0.9 required=5.0 tests=BAYES_40,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,FORGED_HOTMAIL_RCVD2, FREEMAIL_ENVFROM_END_DIGIT,FREEMAIL_FROM,RCVD_IN_DNSWL_NONE, RCVD_IN_MSPIKE_H2,SPF_HELO_PASS,SPF_PASS autolearn=no autolearn_force=no version=3.4.2 X-Spam-ASN: AS8075 40.80.0.0/12 X-Spam-Virus: No X-Envelope-From: Received: from NAM11-CO1-obe.outbound.protection.outlook.com (mail-co1nam11olkn2087.outbound.protection.outlook.com [40.92.18.87]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by php-smtp4.php.net (Postfix) with ESMTPS for ; Wed, 2 Feb 2022 07:04:48 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=hLUraSN4Ru4cTyymK1hwpGKOZtJiNYexeGYtDCmitTzFDP0Azp/A0NWcBdQCTPmL7HXdICim42sHKIvagV6QHZE5QvPra4nVSx67wboN6ZayMe2trd06YwmVqDmsxxNoPTvDhQF1C08ejl0y4vIkIv+GWrr8xq7KMLGzMGGyCesdeOLb5WeUkC1Gcqjt9/ggQ0k/ljbTx4udu5Jd8U2fYVRLnD4o/bFx6a6hgAefRPphr59ZdfDrkGJ61X13w9uHGvl5c9iqDAHGTSB1Jx0a6tvTus903tRkmJ64hMlu5jN9EdZPbxSc/s+be3dyWjJDgPY9vFIGaBANohkErRhKQw== 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=k8mqeoG2rr/JjhKSgDn+AKR+ettmIuCnb1Q6Dp4DijA=; b=ATJggXl3m0JVPiqADk+koHo/6qubMgdL7to2f4iPR4aDZkco1ovqQDMu27kK67dSPImAAkC7IjLK6weaZQVy7xfmz1vGav5jDpaG1sepPfy3vBueiCWPadOG9t1a/GUs5ykQ4GYnWUFtiok8biJQ/ct9rI5+CdY8EUxZWBoqP5deuhYx4RAL/VIxRwn3zawNd9+rKigUBk84j1DNZbWAQzPyAkzRNrCkX2IoLmfacmtJPOLPiJW33dP3rubdQBZp28snnlNv0WaWEuSjaisYlRoPEQZftEgGg0TfAnvaRbzCTXOJYG1m0it0sLPZRy80jnogMSdfTGT1FFVPWHwomg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=hotmail.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=k8mqeoG2rr/JjhKSgDn+AKR+ettmIuCnb1Q6Dp4DijA=; b=aDLdBpbcc8VtHDAh/lWUv0j8BezQoZEwcJxQamCd321x4AGHn2bU4CFQoPYFn+rktp5wpP85Ywx8wdYv2L/01O1tUIAb70YOxYeeVQTvUS13Xn5s1xRh6mt26iHdj62kjvR+QO19FU0SZyJq3kLa+G7MI1scQjWgVzXCkdNHmrTV/XmsK7Mr/nCJfAumnxXUvcRQwuomQmk4E0vKbVHdzlZZt4bsH50/jrl1oXE3U7DyAAPoljDFbTV9rnAjJhuBiV8U6x+IXvSDMqIXRAuL0uSqqzs7cU01Aq1WMxFrev9Zs5NtSv/SIjRn7a46u6BMggWaMvw2J8+PiY4+fsSBbw== Received: from DM6PR14MB4155.namprd14.prod.outlook.com (2603:10b6:5:21e::11) by CH2PR14MB3881.namprd14.prod.outlook.com (2603:10b6:610:62::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4951.12; Wed, 2 Feb 2022 15:04:46 +0000 Received: from DM6PR14MB4155.namprd14.prod.outlook.com ([fe80::1ddb:6eeb:a96d:9846]) by DM6PR14MB4155.namprd14.prod.outlook.com ([fe80::1ddb:6eeb:a96d:9846%4]) with mapi id 15.20.4930.022; Wed, 2 Feb 2022 15:04:46 +0000 To: "internals@lists.php.net" Thread-Topic: [PHP-DEV] Adding `final class Deque` to PHP Thread-Index: AQHXraUxaK1dZ0niuECOJlLUpHNcpax/lZKygAAan4CAAX+uOw== Date: Wed, 2 Feb 2022 15:04:46 +0000 Message-ID: References: In-Reply-To: Accept-Language: en-CA, en-US Content-Language: en-CA X-MS-Has-Attach: X-MS-TNEF-Correlator: suggested_attachment_session_id: 35da99b8-ab67-62a1-d1f1-336808aaee82 x-ms-exchange-messagesentrepresentingtype: 1 x-tmn: [TcjAUN+l8rSElwW+oEks8+kse5oa8N0kJPtsYNSMjC+i9ArmHeszlHpg02AahKf6xeI16TMWxbA=] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: a5684127-84f0-40a8-ea69-08d9e65d5a0d x-ms-traffictypediagnostic: CH2PR14MB3881:EE_ x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: /I4gh40ZIhfHxBG8yLaEnT+81XF5YiAutpiwWZuPX8bBf79ZYzlShWUcfUwlbBqoMVpXn3HumnRczZOERKxbWX8VkrJeVO0crL3yFTcxQ5Ans+9DT/jwwapQUUp231EL94Ze8hw2pxsHwfEDwE4Q1TuI9yKyMpxrfVKPc4ZTWGZd6fTmG/n1u7meEpw+v6UyziGhN2LSHSwA0tXYlgLnL+5wr8xNmv0eEwdN7Wg3UN4pJPd7cu/KIlsu/lTwb2vU/iQcmZnSqLfWqvmWKOJk9tENNsHjGhe10MYZDAHiihAbtW1e3p3ulquS+R5azBjKY71rt36V2BaQGDJgb3PxOSEa6BuB6nbJQBe8ZxUMJCZRcGFkgVprKVfCjnHWv0DpAvBv26k8gR59FWrP5ixbpC0+7GvCbc2LOCdiBSaGReKYeEBqgqE/wg0izL9ge575ay/80ypH3oFL2uKpuAYhQsumb0QfZWNkJOqUqCxRnvmPiUQmm/gAslTWY5cNb9hMShJBgU8imXEAHCrkJKiB51nASsin8NJVcJ8fGb87yqw6yGBJ83L3p8Nlcjth1jcjAubZtPKOshYI+dt4sxse1xPWr2Z5SnAWsj9mgOub7Dan4wvr95rAVCUakfcmf+vs x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?Windows-1252?Q?ly82cNfnkxrpQe5wERVU7utDg9CVgzDJXPdz8DtwHZrgQZbuXOiz+z9o?= =?Windows-1252?Q?9+hr6vqtHsbCFi8XG1Lav+2UA8kshurOwkJlShKr05KCxflXMzyrDxG4?= =?Windows-1252?Q?YF9w0zsasZGxCYJUayOyJNrq8md4Bs9XsP70V85pDzaF98AxV4fwR6gu?= =?Windows-1252?Q?XHU6jix4/qkJ+QgdSqTYsJA8Jvs+AVq+V+CQCySp5NYwtLXQ3uLazfsN?= =?Windows-1252?Q?mgacXEgbu6EVcQ4LVg+qpW2760I/O+0vMxPmlKGwVDagIFuvQRbadgUp?= =?Windows-1252?Q?Qh0O4TvB8FxrGoWqvnkuHcdXK5831NCbBq51S5E7jQjChq3f41uJcSVl?= =?Windows-1252?Q?U8ChE8jGsD6LQCG3QlwDV2y87ygFrKOyaa/RlrF8MXUVQD2EFdRUQ/ep?= =?Windows-1252?Q?/Ko6IK8VpQMIPWbcl406VqsHTnoqlPvlk0BgXmQ6eb/a3XifezkUnXMK?= =?Windows-1252?Q?PbQdrPvoIv0Ag9AJsfHscBYNk9bW4LqxAv9aZLyCJQOTqQywIqYJ/Dao?= =?Windows-1252?Q?Oih4fgW6PBqCt0vXSFjT3obsw1Mba+RbRbSdgoIoyVCm+/kkHo5mm/bv?= =?Windows-1252?Q?oGjj2c5LCofr/q6NC9kknLaFCdWbzVjF0VnmRTaQ5PX602s/Lu7Pqefb?= =?Windows-1252?Q?kFqDSafelVctDYrQY/8Rj4AEa4ROylA50UFQFGieygAjtIB/Z9N7Vs+l?= =?Windows-1252?Q?iRJARhW53DyqC++Q5B3bPXASs+u7CXtsPx9CzVHef9n0nuY5Qgwzqehs?= =?Windows-1252?Q?NIB1EBJJXaTkcStqrZa6NIoEqb/v+r+wb1jf/LSSSGH5yM1zro3SJNC0?= =?Windows-1252?Q?llKqOC5GD8AgtTjJYaagvetgabeJcay7mrnaiv850EB0W2jVBO58aQ43?= =?Windows-1252?Q?T0o+oDKk95UtO7TpVcAfgrOc/HIdL5q+BtB0nIRVgKf4+lBaASDm0hyM?= =?Windows-1252?Q?XD84lOrUh3Djri5IIq98qYYJ84UkKWnldmTUJ13EgFndYNsJ1Bg3MQcD?= =?Windows-1252?Q?0xvuhMHr2URJPVZN+uT2VLHGFuhKpQ5fWobwL+guc0R4EhxNFAg7Y/Z8?= =?Windows-1252?Q?cz3UWjq/zVnulKKpM5OKmbfEEGSvHZlzr884fA=3D=3D?= Content-Type: text/plain; charset="Windows-1252" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-OriginatorOrg: sct-15-20-4755-11-msonline-outlook-cd57b.templateTenant X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: DM6PR14MB4155.namprd14.prod.outlook.com X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-CrossTenant-Network-Message-Id: a5684127-84f0-40a8-ea69-08d9e65d5a0d X-MS-Exchange-CrossTenant-originalarrivaltime: 02 Feb 2022 15:04:46.6375 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-rms-persistedconsumerorg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH2PR14MB3881 Subject: Re: [PHP-DEV] Adding `final class Deque` to PHP From: tysonandre775@hotmail.com (tyson andre) Hi Stephen,=0A= =0A= > As a userland dev & library author it=92s nice to see some progression on= basic data structures, so thank you for your efforts on this!=0A= > =0A= > =0A= > Two little things in the RFC:=0A= > =0A= > The proposed API switches between terms `front`, `back`, `start` and `end= ` in comments - is there meant to be a conceptual difference between front/= start and end/back ?=0A= =0A= Good point. I've changed the method names to first()/last() and also made t= he wording in https://wiki.php.net/rfc/deque more consistently use first/la= st to avoid confusion.=0A= =0A= No, They're the same. front=3Dstart=3Dbottom=3Dfirst. Bottom was from SplDo= ublyLinkedList/SplStack, e.g. the bottom of the stack, top is where `push()= ` acts, etc.=0A= Front was how I was referring to iteration order.=0A= =0A= > In the "Why use this instead of array?=94 Section, the 3rd point seems cu= t off:=0A= > > Note that starting in php 8.2, array=0A= =0A= That should say "Note that starting in php 8.2, arrays that are lists (with= no/few gaps) are represented in a more memory efficient way than associati= ve arrays.".=0A= =0A= I've updated the RFC.=0A= =0A= Thanks,=0A= Tyson=0A=