Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:116111 Return-Path: Delivered-To: mailing list internals@lists.php.net Received: (qmail 83112 invoked from network); 20 Sep 2021 19:44:18 -0000 Received: from unknown (HELO php-smtp4.php.net) (45.112.84.5) by pb1.pair.com with SMTP; 20 Sep 2021 19:44:18 -0000 Received: from php-smtp4.php.net (localhost [127.0.0.1]) by php-smtp4.php.net (Postfix) with ESMTP id 92BD01804CF for ; Mon, 20 Sep 2021 13:25:05 -0700 (PDT) X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on php-smtp4.php.net X-Spam-Level: X-Spam-Status: No, score=-2.2 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,FREEMAIL_FROM,NICE_REPLY_A, RCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H2,SPF_HELO_NONE,SPF_PASS autolearn=no autolearn_force=no version=3.4.2 X-Spam-ASN: AS15169 209.85.128.0/17 X-Spam-Virus: No X-Envelope-From: Received: from mail-wr1-f53.google.com (mail-wr1-f53.google.com [209.85.221.53]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (P-256) server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by php-smtp4.php.net (Postfix) with ESMTPS for ; Mon, 20 Sep 2021 13:25:05 -0700 (PDT) Received: by mail-wr1-f53.google.com with SMTP id w29so33108069wra.8 for ; Mon, 20 Sep 2021 13:25:05 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=subject:to:references:from:message-id:date:user-agent:mime-version :in-reply-to:content-transfer-encoding:content-language; bh=icqXGpdB8xsrLKMQz5pf8BhSw8aEi2rixTc7Isr0Tuc=; b=azTAKR6HDvMEacnoU6/u1bOcLuFrD0z+m/RUaoUjzJRR/UiBEwDqVQVhAjggslzfZw XphlNhaOvdECYzPR0dPi4fxIIO6WgxoxIAs5Iplib3H5PwN3gyfB/veoRb6RXle7N5aM itP1zUF1pLJ26/Ln2Mo8axVdlA2A5Wg7iuFYxeQraJokLdQ1I30F0bX+/8wuYTFHdnhS 4bIMV65WuroZT1JZA4pNQxO2caOK80jwHT0exR13ye7Loy468LPvdI8esMLuWcydh9mf 2dBj1oEhmpsssrhNg22Cg08rkR3zw2tAiEzXOS489b3/ZMGgnHvW4Y0wQAMLjmE3/oJs DeEg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:subject:to:references:from:message-id:date :user-agent:mime-version:in-reply-to:content-transfer-encoding :content-language; bh=icqXGpdB8xsrLKMQz5pf8BhSw8aEi2rixTc7Isr0Tuc=; b=M5rTqI0YA6hp70HdkL/hnbLbUkUwg9S30wwoUhujVfVzUMmFycwrAdNN6oEWO6Rhua xRH12UnceeTl55TzbPEBSQ03ALO7FT/PBvuhUSbpiEqRnjbMCXHoQESbNPe9jUlpKK8s GZkPFSzl7QGBK7mPoRkzwoWBArdfKD6FotWROoKP/rNH7tsGv1WFFpwLBpAqHPUqUa1B uwzsIaD8ZMq3e7inID85K2Us5cPVLxxREJU17DY0TKdiYOWhWuqGYaoqPKq5r2+ObS0j Q412r8yptpM0IUmvgeUop1Rmce0dr9nIs4nTGwKHCvCyw0ua1VFF2ch2LPiGtXdRqH3C OZEg== X-Gm-Message-State: AOAM5305u8Pp5EU+3CA3Fv3pXSjJ4F6fSnwHAQPwijUN8VGAGyQqQwXG cpEwTAnOixo4RlrqReOob19errTQRW8= X-Google-Smtp-Source: ABdhPJy1lnTL/e1jLs7BVlYI8n5VoViguwnArF0Kc7gEhFMfNpaF8QqX6/GP7wWnJxNayqg1B+Tylg== X-Received: by 2002:a05:600c:4f4c:: with SMTP id m12mr841636wmq.164.1632169503152; Mon, 20 Sep 2021 13:25:03 -0700 (PDT) Received: from [192.168.0.22] (cpc104104-brig22-2-0-cust548.3-3.cable.virginm.net. [82.10.58.37]) by smtp.googlemail.com with ESMTPSA id k17sm16802352wrq.7.2021.09.20.13.25.01 for (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Mon, 20 Sep 2021 13:25:02 -0700 (PDT) To: internals@lists.php.net References: <2cc07ebd-81b0-6083-3b3d-2a678ba39784@processus.org> Message-ID: Date: Mon, 20 Sep 2021 21:25:01 +0100 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101 Thunderbird/78.14.0 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit Content-Language: en-GB Subject: Re: [PHP-DEV] Adding `final class Deque` to PHP From: rowan.collins@gmail.com (Rowan Tommins) On 20/09/2021 14:46, tyson andre wrote: > The choice of global namespace maintains consistency with the namespace used for general-purpose collections already in the SPL I find this argument unconvincing. If the intention is for this to fit with existing classes in the SPL, it should be called "SplDeque", or more consistently "SplDoubleEndedQueue", and the RFC should talk about how the design aligns with those existing classes. If it is intended to be the first of a new set of data structures which are *not* aligned with the existing SPL types, then putting it in a new namespace would make most sense. In the RFC and the list you've mentioned a few comparisons, but I don't think any of them hold: * ArrayObject, WeakReference, and WeakMap are all classes for binding to specific engine behaviour, not generic data structures * Iterators all have an "Iterator" suffix (leading to some quite awkward names) * Reflection classes all have a "Reflection" prefix * Having both "Queue" and "SplQueue", or both "Stack" and "SplStack" would be a terrible idea, and is a pretty strong argument *not* to add data structures with such plain names Regards, -- Rowan Tommins [IMSoP]