Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:129263 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 lists.php.net (Postfix) with ESMTPS id A27321A00BC for ; Sun, 16 Nov 2025 10:45:33 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=php.net; s=mail; t=1763289938; bh=rD7YofRO5tDcbhasqRDB52Nd6s0FvhGj0szMccUSREo=; h=Date:From:To:Cc:In-Reply-To:References:Subject:From; b=FYH9OLyU7b60Ie15YKd71r5QBgdkn/A3fr156KmdrEPq0q9RBHuapvLzeT+K2P76P C5lvHW30GVbdPFbG/bv43R+PjPjtKToIYpAsGqAoqDLv+I49Bv8WJIYcoG4BKgwak6 mG+4fRaS8ebyARoF7KrLCNEdN4L8kwOgAek5QOHaTFotS2A5nKofA+ypQoPafQPgdH nNUHKiSS1g9P+O/c+tNACIEbRTl/MduEJat+I0sWNmUKXtn+60ikVH3gd6XnqBMnMB MerzhuZsJdq7f2lJsIYY2FwIzoXZE30BnxhjwiPfvwHCfAL95JoN31SkegGS1j6s21 2RYtXlVepUoTA== Received: from php-smtp4.php.net (localhost [127.0.0.1]) by php-smtp4.php.net (Postfix) with ESMTP id 6F4BE18080A for ; Sun, 16 Nov 2025 10:45:37 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 4.0.1 (2024-03-25) 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,DMARC_MISSING,HTML_MESSAGE, RCVD_IN_DNSWL_LOW,SPF_HELO_PASS,SPF_PASS autolearn=no autolearn_force=no version=4.0.1 X-Spam-Virus: No X-Envelope-From: Received: from fhigh-b2-smtp.messagingengine.com (fhigh-b2-smtp.messagingengine.com [202.12.124.153]) (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 ; Sun, 16 Nov 2025 10:45:37 +0000 (UTC) Received: from phl-compute-12.internal (phl-compute-12.internal [10.202.2.52]) by mailfhigh.stl.internal (Postfix) with ESMTP id E41D17A016A; Sun, 16 Nov 2025 05:45:26 -0500 (EST) Received: from phl-imap-05 ([10.202.2.95]) by phl-compute-12.internal (MEProxy); Sun, 16 Nov 2025 05:45:27 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bottled.codes; h=cc: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=fm1; t=1763289926; x= 1763376326; bh=rD7YofRO5tDcbhasqRDB52Nd6s0FvhGj0szMccUSREo=; b=X WmRchBrQ+4PJGqk5wbO3wOFBfeMZrhRJBQp1DjAUQTz/fenL63YyOwhNaohphyeW ts3Dv3OcpQcUntq5VznijdHWOsiuBXTmjIaNEcRV7G1og4KFTGvGhKDY/0Nb5QEx T+qKFdXQeiLuUzeaWVVkIxf7l76wkjZ8AhRzRPUwyLtlLWoU+aSzObkqv0Aw5TM+ +xkGWvPpVPZpikFc5jpgLYwH+LwTWzguPaqoEr1FLTVcLBznXbNJM/OEstc6529k 7sbxE8/NDgIdGV0LrJBbBqxGzhgBXsgzkggRIv3qXokAvj/gQcrAkjwHsBaT1E0F Lf5kFhTIwK/nAGmC5NFzQ== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc: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-sender:x-me-sender:x-sasl-enc; s=fm3; t= 1763289926; x=1763376326; bh=rD7YofRO5tDcbhasqRDB52Nd6s0FvhGj0sz MccUSREo=; b=NzMDL1lVC2YZQuoPCffUmB4PVXUJvWulmer0k47WMvyS2RepXc+ HOBmI5GDTdtsD340lncgNN48SibgBWbUSNBiQ2m2B5rblpO5LJF7dZtvroIsZOTg RpXTJv+bO86Xk0g7LjFEQHKtWd2jECxlsyJuE47y7jlRn8zSc1oi9thW3wlkmt82 mWTrp4a5mfmbwNkBZF8KTmv/mXLlSXhehgHl6kbQl7xBfa3z4u9Swjw5RVam7yDF V/TgxJZDLfeoq3UXzGfwKZLgU4m5xLtQF9AQSl9ffoX8vNif2I3ZmFMU5v3CxDIE wytn5y+X4EUX3AvA7bSCWGUMUBwUgnNnHTg== X-ME-Sender: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgeeffedrtdeggddvudehfeejucetufdoteggodetrf dotffvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfurfetoffkrfgpnffqhgenuceu rghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmnecujf gurhepofggfffhvfevkfgjfhfutgesrgdtreerredtjeenucfhrhhomhepfdftohgsucfn rghnuggvrhhsfdcuoehrohgssegsohhtthhlvggurdgtohguvghsqeenucggtffrrghtth gvrhhnpeeiueethedvvdefjefhgfeiheelheehtdfhfeekjefflefgvedvkeduteejjedt tdenucevlhhushhtvghrufhiiigvpedtnecurfgrrhgrmhepmhgrihhlfhhrohhmpehroh gssegsohhtthhlvggurdgtohguvghspdhnsggprhgtphhtthhopeegpdhmohguvgepshhm thhpohhuthdprhgtphhtthhopehlrghrrhihsehgrghrfhhivghlughtvggthhdrtghomh dprhgtphhtthhopegvughmohhnugdrhhhtsehgmhgrihhlrdgtohhmpdhrtghpthhtohep ihhnthgvrhhnrghlsheslhhishhtshdrphhhphdrnhgvthdprhgtphhtthhopegsuhhkkh grsehphhhprdhnvght X-ME-Proxy: Feedback-ID: ifab94697:Fastmail Received: by mailuser.phl.internal (Postfix, from userid 501) id F3C071820054; Sun, 16 Nov 2025 05:45:25 -0500 (EST) X-Mailer: MessagingEngine.com Webmail Interface Precedence: list list-help: list-unsubscribe: list-post: List-Id: x-ms-reactions: disallow MIME-Version: 1.0 X-ThreadId: A2k3WxiDp57Z Date: Sun, 16 Nov 2025 11:44:25 +0100 To: "Edmond Dantes" Cc: "Jakub Zelenka" , "php internals" , "Larry Garfield" Message-ID: <08303459-b4ab-44a8-9795-0fb7f82914d0@app.fastmail.com> In-Reply-To: References: <6618a91c-5393-4f40-88b5-b5041ee09deb@app.fastmail.com> <3e0cf0a1-c1a3-4e05-97ba-0eeb7f559a53@app.fastmail.com> <41c5eed0-dd1b-4ea4-99cf-f6d16682bd7f@app.fastmail.com> Subject: Re: [PHP-DEV] Re: PHP True Async RFC Stage 5 Content-Type: multipart/alternative; boundary=2a672d412dbd43988418b3479a2a7992 From: rob@bottled.codes ("Rob Landers") --2a672d412dbd43988418b3479a2a7992 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable On Sat, Nov 15, 2025, at 23:06, Edmond Dantes wrote: > > I guess my main thing is that this RFC should only cover coroutine m= achinery: it should not promise "transparent async" or "code >=20 > It=E2=80=99s like trying to dig a hole with half a shovel :) >=20 > > that works exactly the same" OR if it wants to make those claims, it= should actually demonstrate > > how instead of hand-waving everything as an "implementation detail" = when none of those claims can actually be validated without those detail= s. >=20 > All of my claims are backed by tests :) I will leave with some final advice. The problem with tests is that they= only validate the current implementation, which isn=E2=80=99t guarantee= d to be the final implementation. I would recommend reviewing your tests= and matching up each of them to where you mention that behavior or defi= ne it in the RFC. If the tests are implementation-specific, then it need= s to be defined in the RFC. For example, you say that the scheduler is 1= 00% an implementation detail, but your outputs in the tests rely on a sp= ecific ordered queue. You should at least define the ordering the queue = should be processed in the RFC (LIFO vs FIFO) so that even if the implem= entation changes, the tests still pass. That=E2=80=99s one example, you can review my previous comments to disco= ver other examples, such as defining the rules of suspension points. I wish you the best, =E2=80=94 Rob --2a672d412dbd43988418b3479a2a7992 Content-Type: text/html; charset=utf-8 Content-Transfer-Encoding: quoted-printable
On Sat, Nov = 15, 2025, at 23:06, Edmond Dantes wrote:
> I guess my main thing is that this RFC sh= ould only cover coroutine machinery: it should not promise "transparent = async" or "code

It=E2=80=99s like trying to dig= a hole with half a shovel :)

> that works e= xactly the same" OR if it wants to make those claims, it should actually= demonstrate
> how instead of hand-waving everything as an = "implementation detail" when none of those claims can actually be valida= ted without those details.

All of my claims are= backed by tests :)

I will lea= ve with some final advice. The problem with tests is that they only vali= date the current implementation, which isn=E2=80=99t guaranteed to be th= e final implementation. I would recommend reviewing your tests and match= ing up each of them to where you mention that behavior or define it in t= he RFC. If the tests are implementation-specific, then it needs to be de= fined in the RFC. For example, you say that the scheduler is 100% an imp= lementation detail, but your outputs in the tests rely on a specific ord= ered queue. You should at least define the ordering the queue should be = processed in the RFC (LIFO vs FIFO) so that even if the implementation c= hanges, the tests still pass.

That=E2=80=99s on= e example, you can review my previous comments to discover other example= s, such as defining the rules of suspension points.

=
I wish you the best,

=E2= =80=94 Rob
--2a672d412dbd43988418b3479a2a7992--