Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:129241 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 937751AE133 for ; Sat, 15 Nov 2025 21:20:42 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=php.net; s=mail; t=1763241647; bh=jNhS8N8Xezxyh/v3zmH94P+gFEn1nEeVG3485hbf/3A=; h=References:In-Reply-To:From:Date:Subject:To:Cc:From; b=MXs6T9o9VHMCvrE8PEsINOQfG8R9EEXLvnAw/RW1z3VS1xNrxpHfIb0oHz6p+C6SH +UpMHbYVNpLKZqzuIJbYFy656Mu/YcdYdv0dLTAmZfRWSlbltKWj0XvYeEb2qTB4YR cF+nJ+F641gZMTZWCBoJp2mOW3/VIhE2QYle9gwMplkKqXqJvtoPuCf38AyZx6eiHW naUumPBL4EC8Sq889EYiWqybWkWjkaCBUArswEOX49gpBik9hphLlRqNWDLfUFOp9h BuxgTO46FS4gbfLaLGRdtvhaNTi89uYwpJ6CGZXpMTZkB7+8Zj9F0aFzlVQEOWiyhp f6DOZOv1JK31g== Received: from php-smtp4.php.net (localhost [127.0.0.1]) by php-smtp4.php.net (Postfix) with ESMTP id 8C52B1804DC for ; Sat, 15 Nov 2025 21:20:45 +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.6 required=5.0 tests=BAYES_50,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,DMARC_PASS,FREEMAIL_FROM, RCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H2,SPF_HELO_NONE,SPF_PASS autolearn=no autolearn_force=no version=4.0.1 X-Spam-Virus: No X-Envelope-From: Received: from mail-vs1-f54.google.com (mail-vs1-f54.google.com [209.85.217.54]) (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 ; Sat, 15 Nov 2025 21:20:38 +0000 (UTC) Received: by mail-vs1-f54.google.com with SMTP id ada2fe7eead31-5dd8a02e808so2521807137.0 for ; Sat, 15 Nov 2025 13:20:33 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1763241633; x=1763846433; darn=lists.php.net; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=jNhS8N8Xezxyh/v3zmH94P+gFEn1nEeVG3485hbf/3A=; b=izHXw15cbAr6AgX1ChUkEt05ycR4PxzYYPqmlc4HGyRHPqfW2/1RCjKWgwzbeHTUpL 7Y5ULuUKaYbLVAIAOdwuhdnNZFWJhMqzwu+CQfRaQUFW162o+h6AHiWJBnGkdhEDaSFP ghEbcmwORoPUaU9+5Z09Ya2nsU0SVvbg3hSHzjqr2zjwbNCHgdegwHBbQlWczWayW8D0 1bLZWXeHgKmCSEqBfSw6JIANQFer/rbNioiee2jm/I5ESM/CMKHQbBeCp0AoXy8AbPov DjW4T2vJOELmpsdjVsbKqmUP2TTMLUGyObjC8G9A2fwJLtODJ4S9lxCeyEHdvgldQ61k vXQA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1763241633; x=1763846433; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=jNhS8N8Xezxyh/v3zmH94P+gFEn1nEeVG3485hbf/3A=; b=cfs7n2DiKaEMU8udOOuIIZGxbm9fVHJSO6bVrRTKcljk/P2SmfV8LeNMBImn+V/ykp zapDaFoWMaemJFYWp5XCYVsGH+LJNtHrw4q5jGdGIK/JebpDU6JXHJNr3QStQn/Cy++n 2mb3f/Fwpen+kzsN8uriGtaYNHSQUWOWK+55eKSzPBgPjFqQ0JxHSYeiALizF0egz7U/ t3arhzwbGDA3gedTzUSiTiLij1m+ausriQQbB3wZKxImpnYyJd0+VdPrplCB6lPVCk6v 6mgjGiaAowPZ4USSd6Q1dM3Wn9r1laJOEJnqrj4xDzW/ElDWw3f8pyK5gQP9juKj4QLQ 3uhA== X-Gm-Message-State: AOJu0YzXG1KCllX5ByBHNUEI65V10BDskmkSpSaw05t84YAUNBrcGe13 Dnu1iwKSHd926W3hF1c0xlNy/zy4/ahDIEzydO0aJb4kU8ZjfMJFEMlrGyGUIqvMUx0yAJHhnqk j8QUSr/oVkL7wFzgx25DRQDB2kabIOK27T41I X-Gm-Gg: ASbGncuVz0vyigY/USqCW5vHD4/GYPTIKHOFuzb026YUsXMTpkOQpEJjlufgqw446vJ OPQDuDqmsWJHmOyl9pqetxaklr7XwESXJBpQnq8tJWelHII0lSrDObXcDaQ6ddadQyWvMDmWUCq wgn9cA1+7tgvkNpZlWDg0UOjB+hBb4RwDCT+gCOEWbMMxmMjbLvZB/EvJsRzP2zaIGoiK3gbbUO LT4yreNI6CKwTv8dj4wQRyqJHsknBxm4WceBaJDbz9rcbfxJ2JgE6yRGHDvd+4BHCPmpb9YVEZM JbFkwA/KDPypMcHlcjm6yGlHbw== X-Google-Smtp-Source: AGHT+IHFIxbQHp8ttfCLNrMOIDUQnoKjYOOURH58u8ZSkr3Fwiex4qt8i+UU+ETqQq23+rrYkV3Dx0AcZE1rrHCOeKY= X-Received: by 2002:a05:6102:4422:b0:5db:ca9e:b57d with SMTP id ada2fe7eead31-5dfc561815cmr3151084137.19.1763241632992; Sat, 15 Nov 2025 13:20:32 -0800 (PST) Precedence: list list-help: list-unsubscribe: list-post: List-Id: x-ms-reactions: disallow MIME-Version: 1.0 References: <6618a91c-5393-4f40-88b5-b5041ee09deb@app.fastmail.com> <3e0cf0a1-c1a3-4e05-97ba-0eeb7f559a53@app.fastmail.com> In-Reply-To: Date: Sat, 15 Nov 2025 23:20:21 +0200 X-Gm-Features: AWmQ_bmQKcGmdUwwC8dqut7J1QrZuA1eo4_Ly6h1yJHigEExFvqwAL2NnAiLylc Message-ID: Subject: Re: [PHP-DEV] Re: PHP True Async RFC Stage 5 To: Rob Landers Cc: php internals , Jakub Zelenka , Larry Garfield Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable From: edmond.ht@gmail.com (Edmond Dantes) Hello. > An array_map() always blocks the thread but should never suspend. This function is not related to this discussion or to the RFC. > Without very clear rules, it becomes impossible to reason about what=E2= =80=99ll suspend and what won=E2=80=99t. As I mentioned earlier, this RFC clearly defines the rules for integrating functions. The functions themselves will be documented. > That=E2=80=99s not quite enough. The order really matters. Different sche= dulers produce different observable results. No modern language guarantees a fixed execution order of coroutines. Go, Kotlin, Python, JavaScript, C#, Rust. All only guarantee order when explicit synchronization is used. Everything else is an implementation detail of the scheduler, and user code must not rely on it. (Because concurrency naturally has many valid execution paths, not one. Forcing a single fixed order is impossible without adding heavy synchronization everywhere, which destroys performance and breaks the concurrency model.) > Unfortunately, I can=E2=80=99t find a link to documentation that old. no one can > I may be missing something, but I don=E2=80=99t see this spelled out anyw= here in the RFC. What exactly were you unable to find? > Right now, without suspension rules, scheduler guarantees, defined syscal= l-cancellation semantics, it=E2=80=99s tough to evaluate the correctness an= d performance implications. > Leaving some of the most important aspects as an "implementation detail" = seems like asking for trouble. I=E2=80=99m sorry, but it=E2=80=99s difficult for me to understand what thi= s is referring to.