Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:125080 X-Original-To: internals@lists.php.net Delivered-To: internals@lists.php.net Received: from php-smtp4.php.net (php-smtp4.php.net [45.112.84.5]) by qa.php.net (Postfix) with ESMTPS id B41171A00BD for ; Wed, 21 Aug 2024 00:32:08 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=php.net; s=mail; t=1724200438; bh=70yB3CY4V6EkLni3491/xncVQC2+C3lJO4Li61TJALo=; h=Date:From:To:In-Reply-To:References:Subject:From; b=Z1w4sVBU1ofharmjeEMbmkONwkQKvz8pJoCQgUR+KYg8fqE2g6fO1UlYD9hstXB72 KhsYbehLC39AoQXx82yEvtjI5XJYLKXNFtmMs0dPFYi6rS0dU8wF/W6LTzbZO89s70 f65JJgUkddROIqkMupxhoX9PkDy5vfA+P9/ihzNyE4ADHIW0jdifH+wa747HY4iwCj hgUR1zjM6a+LEzxzlVmdbHEHAavskjKwaCFimoZjRqIUNwGDJH0OafGkUVfERWyfAB xwR7e3a9zRSpeqF6lhBAFwWhR6BKTZbqfurLHU0N4FN+EKWv6UFpxOLIwpQBnibjj1 uSaoSYQbby/Cg== Received: from php-smtp4.php.net (localhost [127.0.0.1]) by php-smtp4.php.net (Postfix) with ESMTP id 68B3E180034 for ; Wed, 21 Aug 2024 00:33:57 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 4.0.0 (2022-12-13) on php-smtp4.php.net X-Spam-Level: X-Spam-Status: No, score=-0.1 required=5.0 tests=BAYES_50,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,DMARC_MISSING,HTML_MESSAGE, RCVD_IN_DNSWL_LOW,SPF_HELO_PASS,SPF_PASS autolearn=no autolearn_force=no version=4.0.0 X-Spam-Virus: No X-Envelope-From: Received: from fout4-smtp.messagingengine.com (fout4-smtp.messagingengine.com [103.168.172.147]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by php-smtp4.php.net (Postfix) with ESMTPS for ; Wed, 21 Aug 2024 00:33:56 +0000 (UTC) Received: from phl-compute-02.internal (phl-compute-02.nyi.internal [10.202.2.42]) by mailfout.nyi.internal (Postfix) with ESMTP id 090F0138FD2B for ; Tue, 20 Aug 2024 20:32:07 -0400 (EDT) Received: from phl-imap-09 ([10.202.2.99]) by phl-compute-02.internal (MEProxy); Tue, 20 Aug 2024 20:32:07 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bottled.codes; h=cc:content-type:content-type:date:date:from:from:in-reply-to :in-reply-to:message-id:mime-version:references:reply-to:subject :subject:to:to; s=fm2; t=1724200327; x=1724286727; bh=70yB3CY4V6 EkLni3491/xncVQC2+C3lJO4Li61TJALo=; b=vMrlgmaj3r6GNXSCTnrPwF8Dv1 7+EGjp1oXET1+bOFFsEAgvF3cHToHBJIH6qd2ivvgD9PSAza/EzysTzU12XU89S3 CZF2PvJ8Wis1o0+S9W6GHZ80uKNMWf9SAHM2Vl2kE/a2D5FnWOQqcC/PnDkKy0jL hoJJ5qyQiucvSAdrZodIKS50Lx1DtlkmfzQZgJNrpb3Gj7PHIFjxVUkbdKAPrl6x uYOyyMbsvnnOLei/9FubZnalDoHzw4QVvaHahEaYZsw+ai4+cOkv8bh0g81R56lr uJGdvM7f2ZM0fLRCNwfe/Bj/jEDPXixX/D06EzJa0ymLP5BWVEwq1JqGGlow== 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:subject:subject:to :to:x-me-proxy:x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s= fm1; t=1724200327; x=1724286727; bh=70yB3CY4V6EkLni3491/xncVQC2+ C3lJO4Li61TJALo=; b=Hd6Pknk3bUX26fYcMxGyVEvJbMY2gE5b5dCmp4kfsdIZ YnuWcMVAAw/cjFUUI1CyQuawAcYu5jV1bRERR1g0pFcUZpO4s319NknH8VQeWho5 aoka6TdxdGyMxHfB0wPIxLFVIJINC51BBYSyOgw5Y6att1C6+JFoo/ywzyVNKGmN EyBy7xbj5A+QzmBrYmvzg6L7ZRcNC+B/UlyjDG758jOPgjWhWEtJfxPifbtN8qyV fEJWNkGilkOcLovUzcuET0Kz8/u0GUCIljmopdc47zeJtcL6OnchCqW5XTVSY8vW 8C0dmpf3mBjxgPv0ftek6cfCXIhzmhP+zBPCJTDHsg== X-ME-Sender: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgeeftddruddujedgfeegucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdggtfgfnhhsuhgsshgtrhhisggvpdfu rfetoffkrfgpnffqhgenuceurghilhhouhhtmecufedttdenucenucfjughrpefoggffhf fvkfgjfhfutgesrgdtreerredtjeenucfhrhhomhepfdftohgsucfnrghnuggvrhhsfdcu oehrohgssegsohhtthhlvggurdgtohguvghsqeenucggtffrrghtthgvrhhnpeelkeehtd fgfefhleeilefggeeihfekvdelfeejtdfflefhheehfffgudetuddutdenucffohhmrghi nhepphhhphdrnhgvthenucevlhhushhtvghrufhiiigvpedtnecurfgrrhgrmhepmhgrih hlfhhrohhmpehrohgssegsohhtthhlvggurdgtohguvghspdhnsggprhgtphhtthhopedu pdhmohguvgepshhmthhpohhuthdprhgtphhtthhopehinhhtvghrnhgrlhhssehlihhsth hsrdhphhhprdhnvght X-ME-Proxy: Feedback-ID: ifab94697:Fastmail Received: by mailuser.nyi.internal (Postfix, from userid 501) id AE78515A005E; Tue, 20 Aug 2024 20:32:06 -0400 (EDT) X-Mailer: MessagingEngine.com Webmail Interface Precedence: bulk list-help: list-post: List-Id: internals.lists.php.net x-ms-reactions: disallow MIME-Version: 1.0 Date: Wed, 21 Aug 2024 02:31:27 +0200 To: internals@lists.php.net Message-ID: <7a650bf9-a905-4b39-9f78-d541209b8f2f@app.fastmail.com> In-Reply-To: <63654CCD-DF9C-45A4-814E-5696BD780EB3@dafert.at> References: <2716f729-4008-4f75-8412-861d8960b746@app.fastmail.com> <63654CCD-DF9C-45A4-814E-5696BD780EB3@dafert.at> Subject: Re: [PHP-DEV] function autoloading v4 RFC Content-Type: multipart/alternative; boundary=b2d804026d9046a7a5fcc533b2214c17 From: rob@bottled.codes ("Rob Landers") --b2d804026d9046a7a5fcc533b2214c17 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable On Mon, Aug 19, 2024, at 20:28, Mel Dafert wrote: > On August 15, 2024 5:22:51 PM GMT+02:00, Rob Landers wrote: > >Hello internals, > > > >I've decided to attempt an RFC for function autoloading. After readin= g hundreds of ancient (and recent) emails relating to the topic along wi= th several abandoned RFCs from the past, and after much review, I've dec= ided to put forth a variation of a previous RFC, as it seemed the least = ambitious and the most likely to work: > > > >https://wiki.php.net/rfc/function_autoloading4 > > > >Please let me know what you think. An implementation should be along = before opening it for a vote (now that I realize how important that is). > > > >=E2=80=94 Rob >=20 > Hello, >=20 > I've also noted that on another RFC, but I think it applies here too:=20 > Any new constants that are shaped like an enum and used like an enum s= hould just be > an actual enum. I think instead of `SPL_AUTOLOAD_CLASS` and `SPL_AUTOL= OAD_FUNCTION`, > there should be an `enum AutoloadType` (to be bikeshed), and the new p= arameters > should be typed as such, instead of `int`. >=20 > Regards, > Mel >=20 Hey Mel, I spent a couple of hours trying to do this today. But due to the weird = dependency hell that SPL lives in right now, I'm not sure it can be an e= num (or at least, the linker kept messing up my version of PHP to the po= int where it couldn't even run=E2=80=94it was bizarre; I've only seen st= uff like that with incompatible cgo shenanigans. I will have to try agai= n later when I next rebase my branch).=20 I've reached out to Gina about their RFC and my RFC joining forces. Gina= 's RFC introduces an entirely new API for autoloading and neatly side-st= eps the whole thing. =E2=80=94 Rob --b2d804026d9046a7a5fcc533b2214c17 Content-Type: text/html; charset=utf-8 Content-Transfer-Encoding: quoted-printable
On Mon, Aug 19,= 2024, at 20:28, Mel Dafert wrote:
On August 15, 2024 5:22:51 PM GMT+02:00, Rob Lan= ders <rob@bottled.codes> = wrote:
>Hello internals,
>
>I've decided to attempt an RFC for function autoloading. After re= ading hundreds of ancient (and recent) emails relating to the topic alon= g with several abandoned RFCs from the past, and after much review, I've= decided to put forth a variation of a previous RFC, as it seemed the le= ast ambitious and the most likely to work:
>
<= div>>https= ://wiki.php.net/rfc/function_autoloading4
>
>Please let me know what you think. An implementation should b= e along before opening it for a vote (now that I realize how important t= hat is).
>
>=E2=80=94 Rob

Hello,

I've also noted tha= t on another RFC, but I think it applies here too: 
A= ny new constants that are shaped like an enum and used like an enum shou= ld just be
an actual enum. I think instead of `SPL_AUTOLOA= D_CLASS` and `SPL_AUTOLOAD_FUNCTION`,
there should be an `= enum AutoloadType` (to be bikeshed), and the new parameters
should be typed as such, instead of `int`.

Regards,
Mel

<= br>
Hey Mel,

I spent a couple of = hours trying to do this today. But due to the weird dependency hell that= SPL lives in right now, I'm not sure it can be an enum (or at least, th= e linker kept messing up my version of PHP to the point where it couldn'= t even run=E2=80=94it was bizarre; I've only seen stuff like that with i= ncompatible cgo shenanigans. I will have to try again later when I next = rebase my branch).

I've reached out to Gin= a about their RFC and my RFC joining forces. Gina's RFC introduces an en= tirely new API for autoloading and neatly side-steps the whole thing.

=E2=80=94 Rob
--b2d804026d9046a7a5fcc533b2214c17--