Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:120498 Return-Path: Delivered-To: mailing list internals@lists.php.net Received: (qmail 25054 invoked from network); 1 Jun 2023 07:19:45 -0000 Received: from unknown (HELO php-smtp4.php.net) (45.112.84.5) by pb1.pair.com with SMTP; 1 Jun 2023 07:19:45 -0000 Received: from php-smtp4.php.net (localhost [127.0.0.1]) by php-smtp4.php.net (Postfix) with ESMTP id C4C3A180384 for ; Thu, 1 Jun 2023 00:19:44 -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=0.9 required=5.0 tests=BAYES_50,DKIM_SIGNED, DKIM_VALID,HTML_MESSAGE,RCVD_IN_DNSWL_LOW,SPF_HELO_PASS,SPF_NEUTRAL, T_KAM_HTML_FONT_INVALID,T_SCC_BODY_TEXT_LINE autolearn=no autolearn_force=no version=3.4.2 X-Spam-ASN: AS29838 64.147.123.0/24 X-Spam-Virus: No X-Envelope-From: Received: from wout2-smtp.messagingengine.com (wout2-smtp.messagingengine.com [64.147.123.25]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (P-256) server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by php-smtp4.php.net (Postfix) with ESMTPS for ; Thu, 1 Jun 2023 00:19:44 -0700 (PDT) Received: from compute2.internal (compute2.nyi.internal [10.202.2.46]) by mailout.west.internal (Postfix) with ESMTP id E821B320095F for ; Thu, 1 Jun 2023 03:19:42 -0400 (EDT) Received: from imap50 ([10.202.2.100]) by compute2.internal (MEProxy); Thu, 01 Jun 2023 03:19:43 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:content-type:content-type:date:date :feedback-id:feedback-id:from:from:in-reply-to:in-reply-to :message-id:mime-version:references:reply-to:sender:subject :subject:to:to:x-me-proxy:x-me-proxy:x-me-sender:x-me-sender :x-sasl-enc; s=fm1; t=1685603982; x=1685690382; bh=gk5jfVZ+RC88w /YlgDYmysa89f0kh6CDe0yWbc46J9U=; b=A38lLGMxscGHWd0BH9yoUv1FQ9w/p iFh7pB/cyxFDmP1aj9NL+32bVxJ82frEJLBahiJJy3OAhLqgz1RBLdxjYvMTAC8e 0pm/ju++xcrJgmqWVuZMwNIRBwIDkaipMOn369UsHkACZE8ceFEW/KspnKKOV0VC v4Uui7gr3uCcd2JiApqXQJNh+GGajnWsDnr4/LhKUL1Z+2wzEO4BxuZUjsaQP5mM BEabjsPxt40Tz9vzfKJaABb65lJkbZ2rsYwvIEnVCiJ959+JbfJ3dWjR6Qh5bFMa mH0K63o+h0ZgtpiIzK7Ves+VPdI9u4BoEHdoyPeY5jEoGVyQD1cqfXcag== X-ME-Sender: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvhedrfeeltddguddulecutefuodetggdotefrod ftvfcurfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfgh necuuegrihhlohhuthemuceftddtnecunecujfgurhepofgfggfkjghffffhvffutgesrg dtreerreertdenucfhrhhomhepfdevrghsphgvrhcunfgrnhhgvghmvghijhgvrhdfuceo lhgrnhhgvghmvghijhgvrhesphhhphdrnhgvtheqnecuggftrfgrthhtvghrnhepgfelhf dtueektdetfeeuvdetvdektdevfeevleevieehgfdvhfehtedvffeitefhnecuvehluhhs thgvrhfuihiivgeptdenucfrrghrrghmpehmrghilhhfrhhomheplhgrnhhgvghmvghijh gvrhesphhhphdrnhgvth X-ME-Proxy: Feedback-ID: id4f946ef:Fastmail Received: by mailuser.nyi.internal (Postfix, from userid 501) id 5F7B91700090; Thu, 1 Jun 2023 03:19:42 -0400 (EDT) X-Mailer: MessagingEngine.com Webmail Interface User-Agent: Cyrus-JMAP/3.9.0-alpha0-447-ge2460e13b3-fm-20230525.001-ge2460e13 Mime-Version: 1.0 Message-ID: In-Reply-To: <5FE9216F-A84D-4482-A22E-05A44C2A9A3C@gmail.com> References: <289E585B-EF8B-4B17-89BE-BE8295FD9FE1@gmail.com> <5FE9216F-A84D-4482-A22E-05A44C2A9A3C@gmail.com> Date: Thu, 01 Jun 2023 09:18:41 +0200 To: internals@lists.php.net Content-Type: multipart/alternative; boundary=018a36d934ba44ca9a5e19fac011fc30 Subject: Re: [PHP-DEV] [RFC] [Discussion] Add new function `array_group` From: langemeijer@php.net ("Casper Langemeijer") --018a36d934ba44ca9a5e19fac011fc30 Content-Type: text/plain On Thu, Jun 1, 2023, at 01:19, Boro Sitnikovski wrote: > Thank you for the information and encouragement! I was a bit scared of this one being rejected too, but still decided to give it a shot :) As an alternative approach this is what I would do in your situation: I would start with a PHP implementation, gather some opinions on what this method would do, how it should work. Finalising the functional specification to a point where you find broad acceptance. This would also allow others to help performance optimise your implementation. Then start a PECL extension implementing the exact same thing in C code. This could start as a niche for people that really need the extra performance the extension would bring, possibly grow out to something that is defacto standaard. PECL extensions are documented in the PHP manual, so the manual could have your array_group() function described, possibly with a reference to the original PHP implementation/ polyfill. This approach minimises dependence on internals giving a green light and maximises the possibility to work with others as a team on this. It would give you a chance to prove that the solution you provide is actually wanted by users. If that really is the case, if it came to vote to merging the extension into PHP itself the vote could be different than the vote on the former RFC. Greetings, Casper --018a36d934ba44ca9a5e19fac011fc30--