Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:130682 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 8F9BE1A00BC for ; Tue, 21 Apr 2026 17:52:10 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=php.net; s=mail; t=1776793935; bh=y+iHu+lntEUOQM+B9qayHsoXHmM7C6TyXgAwD8lZXeg=; h=Date:From:To:Subject:From; b=Fc3UJKHnnH0w44bY+zV0/LTpPf4t7Sudf54QwA3GpU+mTM9vBsyeNEA9HzBaB9R+i V7RhyBvqKjZlJlygAusfL4jCh5T9Q/8naAqdu/U4TGJoyRPICZG9Gn3rvdDWPGQQCP bO4KCYHTRZHg07IfVnB7+gSM6z+hcpWb2jwXLLUWU7E395Dpio7LtK47qp5ZcEf0uF bt/Ee47Zp6cgwSFPuEikd62qlCxzZwPvMrnfEjXIiD63j1JpdaJADg5looJNUdib1O 0SJYoNcR2k0/beDQqDa4zw45DA5XN5rO4InzTaKq5TZNobFlQ47JTDN2z2Q5KTDVUq l7X86UT06c8yQ== Received: from php-smtp4.php.net (localhost [127.0.0.1]) by php-smtp4.php.net (Postfix) with ESMTP id 7638F1801C7 for ; Tue, 21 Apr 2026 17:52:14 +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,SPF_HELO_NONE, SPF_PASS autolearn=no autolearn_force=no version=4.0.1 X-Spam-Virus: No X-Envelope-From: Received: from chrono.xqk7.com (chrono.xqk7.com [176.9.45.72]) (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 ; Tue, 21 Apr 2026 17:52:13 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bastelstu.be; s=mail20171119; t=1776793927; bh=cqnIRbToxS7/2XsBE0OuekWL3a9jr/p081o/g22NcBE=; h=MIME-Version:Date:From:To:Subject:Message-ID:Content-Type:from:to: cc:subject:message-id; b=oKEWu2Lq0LFx5o/0eTPKdKBY7ZuFC5GnzhneaDl9OPIrdItd5xxdOHgyTiXics9kC aMzS+su/i6PKwNU4JLhlL3G9Y7lKIAU/IrK2zA4LAjO6yvgb5RAh3H2xoV3sqNpFcj dTru7x7CK4cTaA4GzHP0QRzasxyC2gsQSxlZG9uFw6zBtL3JEkH/EzzAdvI2i3xfLt JnjHXS070mr7oY6bM4MQ/aQFMXHkG+zC3dmzIXykPhHY9ghLnJcPYUacr9nNPoS56+ 4bvuz9l6zkewacmbHs3mstxqMP6m6tc/+IR6IXv0SSSumPodaGm5K2ehxZcUqt22oO egZOLPIXc2B7w== Precedence: list list-help: list-unsubscribe: list-post: List-Id: x-ms-reactions: disallow MIME-Version: 1.0 Date: Tue, 21 Apr 2026 19:52:06 +0200 To: php internals Subject: [PHP-DEV] [RFC] Partial Function Application: Handling of Optional Parameters Message-ID: <2cc2c10757984ec617b72cb3f766d04d@bastelstu.be> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit From: tim@bastelstu.be (=?UTF-8?Q?Tim_D=C3=BCsterhus?=) Hi as part of the design for a “PFA for $this” RFC, Arnaud and I came across one issue in the original design of PFA that makes it hard to do the “PFA for $this” follow-up in a way that does not violate user expectations. Specifically the handling of “optional parameters”. With the support of Larry as one of the original authors of the PFA RFC, we would like to propose an amendment to the PFA RFC that is unlikely to affect real-world use-cases, but that will enable these follow-ups and that will result in a more predictable behavior overall. Please find all details in the RFC at: https://wiki.php.net/rfc/partial_function_application_optional_placeholder Unless significant discussion happens, I expect the RFC to go to vote in 2 weeks, so that it can be incorporated in the PFA implementation right away. Best regards Tim Düsterhus