Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:130488 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 007D11A00BC for ; Mon, 30 Mar 2026 08:38:00 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=php.net; s=mail; t=1774859885; bh=uzVKtzjQqTBGQHdGXhY0hFcKNz2Pp3MpnoaPkVGAth4=; h=Date:From:To:Subject:In-Reply-To:References:From; b=D5CBXvBLvGcXkjy58RbGXC8R3vrcu4r9KDxOQMrAf8LNnHa+Q2QIHJQnYdgVtm/u0 slvucRrCVp/Px7iWE2IJz6gm8XCl1nkKYphvfY3jy5kZsfRRcwr/IO2pzWrqRTlt95 ThudaRfKyVBafXz0RCoLYe7z+ETonaRbn3ZUfvxBpsHrrtT+fkxdMefZLZvkXuIZBI oDjH6s2WIJl/QEJXBtEgWa6AUbga4vA2JiUSZGOuYjDknqjUezBIV9l1MIRBPZ7FS9 svXwB1SuERUZ6hCeagxkU1yU2ih4nQbqFWpraWQjp1P6HZjPvbr8qyR/Yp1eHECmyT jObIO6RrjUMKw== Received: from php-smtp4.php.net (localhost [127.0.0.1]) by php-smtp4.php.net (Postfix) with ESMTP id A244418037E for ; Mon, 30 Mar 2026 08:38:04 +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.1 required=5.0 tests=BAYES_50,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,DMARC_MISSING,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 fout-b2-smtp.messagingengine.com (fout-b2-smtp.messagingengine.com [202.12.124.145]) (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 ; Mon, 30 Mar 2026 08:38:04 +0000 (UTC) Received: from phl-compute-05.internal (phl-compute-05.internal [10.202.2.45]) by mailfout.stl.internal (Postfix) with ESMTP id 7E48A1D002AC for ; Mon, 30 Mar 2026 04:37:52 -0400 (EDT) Received: from phl-frontend-04 ([10.202.2.163]) by phl-compute-05.internal (MEProxy); Mon, 30 Mar 2026 04:37:52 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=rwec.co.uk; h=cc :content-transfer-encoding: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=1774859872; x=1774946272; bh=uzVKtzjQqTBGQHdGXhY0hFcKNz2Pp3MpnoaPkVGAth4=; b= WLio852Oj9ffGfgIbgvH8+HLh7lpYYzn83nVu+CR4N55U7r/nrslUhbb0KtzN6cD IZ7e6qp8ZcvO5veWn9peq4MEGnYSHXSojvbp3n+hiOjSBJHnTHmk4ck1eWOBH0bg CjwgqYU3fbkkXnML6NezdQIc+gcuSPTldtwBZCNHqWxEnLBerkWPhTN5QHxox1tu 1Wm/NqdX0zoUQhy8v45eAO9fGfcNafUt3v1+i77aY+AeLjLSBKLk9HoHxofEmn2J HwmGWOD6VIUUMgZTrcSl8RBoz29JHzVoP6v2FVvsIQif4UBJ0RQJTte99oeQ4SvD ZH74kd9vZXwdLZxCU+IcOw== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:content-transfer-encoding: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=fm1; t=1774859872; x=1774946272; bh=u zVKtzjQqTBGQHdGXhY0hFcKNz2Pp3MpnoaPkVGAth4=; b=peCLJ6kZmVVbQHFBG /K/cdMI1cTqVhYfcKIiPZIcFpQE3MVxWS3Zx16+7h65b7QCBbly/7m99dptdyzCR Hr8tDI0IjPAmb+Q+nBO12icwpfqfVr0MPHJqqnXVx/6vxCq1ON106defdfjxuCkv 0//eA5PKr/7x1ZhrDi5f8m3TZC2/InsfgKJBEs0nGBvBkO7AqgDe9yFh/yPrpcl2 81h0kmVuhhBwM8rIhxuTvsXJdlveoJv5AvjqtIIGnHNS4y5ui/YRuTgg3cGyaVQT Vtp6VApBeEKRBHDF3ZviGhusL1h4A/5u0DAargRn2AEcHGUWNzWHW42kygny+FN+ 5FAWA== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgeefgedrtddtgdeffeekhedvucetufdoteggodetrf dotffvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfurfetoffkrfgpnffqhgenuceu rghilhhouhhtmecufedttdenucenucfjughrpeffhffvufgfjghfkfggtgfgsehtqhhmtd dtreejnecuhfhrohhmpedftfhofigrnhcuvfhomhhmihhnshculgfkoffuohfrngdfuceo ihhmshhophdrphhhphesrhifvggtrdgtohdruhhkqeenucggtffrrghtthgvrhhnpeehle ffteeigfevudetfedugedtudevledugeeugeelheeihfehgfdtkeevvefgleenucevlhhu shhtvghrufhiiigvpedtnecurfgrrhgrmhepmhgrihhlfhhrohhmpehimhhsohhprdhphh hpsehrfigvtgdrtghordhukhdpnhgspghrtghpthhtohepuddpmhhouggvpehsmhhtphho uhhtpdhrtghpthhtohepihhnthgvrhhnrghlsheslhhishhtshdrphhhphdrnhgvth X-ME-Proxy: Feedback-ID: id5114917:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA for ; Mon, 30 Mar 2026 04:37:51 -0400 (EDT) Date: Mon, 30 Mar 2026 09:37:49 +0100 To: internals@lists.php.net Subject: Re: [PHP-DEV] RFC proposal: Invokable interface User-Agent: K-9 Mail for Android In-Reply-To: <14db1f02-c6f1-424f-b6a6-4b880ac18f4d@app.fastmail.com> References: <5ce1f5a3-1ad5-4cc7-8c6e-93170af28ef4@sandfox.me> <9018E616-F5BA-4E94-B2B0-1513A2365286@rwec.co.uk> <14db1f02-c6f1-424f-b6a6-4b880ac18f4d@app.fastmail.com> Message-ID: Precedence: list list-help: list-unsubscribe: list-post: List-Id: x-ms-reactions: disallow MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable From: imsop.php@rwec.co.uk ("Rowan Tommins [IMSoP]") On 30 March 2026 08:58:03 BST, Rob Landers wrote: >I'd prefer if the interface forced an empty argument set=2E You can add a= rguments so long as they're optional=2E But generally speaking, there is no= need for arguments on an invokable class -- that is what constructors and = properties are for=2E An invokable class can be used for all the same things as any other callab= le - I've seen them used for event handlers, middleware, comparison for sor= ting, and so on=2E A type check for "callable with no arguments and mixed/unspecified return"= would be a simple special case of the often-discussed "callable with speci= fied signature"; but I don't think that's what's proposed here=2E Regards, Rowan Tommins [IMSoP]