Newsgroups: php.internals
Path: news.php.net
Xref: news.php.net php.internals:117888
Return-Path: <larry@garfieldtech.com>
Delivered-To: mailing list internals@lists.php.net
Received: (qmail 79865 invoked from network); 9 Jun 2022 14:48:10 -0000
Received: from unknown (HELO php-smtp4.php.net) (45.112.84.5)
  by pb1.pair.com with SMTP; 9 Jun 2022 14:48:10 -0000
Received: from php-smtp4.php.net (localhost [127.0.0.1])
	by php-smtp4.php.net (Postfix) with ESMTP id 29F1D180210
	for <internals@lists.php.net>; Thu,  9 Jun 2022 09:34:27 -0700 (PDT)
X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on php-smtp4.php.net
X-Spam-Level: 
X-Spam-Status: No, score=-0.9 required=5.0 tests=BAYES_20,DKIM_SIGNED,
	DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_LOW,SPF_HELO_PASS,
	SPF_NONE,T_SCC_BODY_TEXT_LINE autolearn=no autolearn_force=no
	version=3.4.2
X-Spam-ASN: AS29838 64.147.123.0/24
X-Spam-Virus: No
X-Envelope-From: <larry@garfieldtech.com>
Received: from wout1-smtp.messagingengine.com (wout1-smtp.messagingengine.com [64.147.123.24])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
	 key-exchange ECDHE (P-256) server-signature RSA-PSS (2048 bits) server-digest SHA256)
	(No client certificate requested)
	by php-smtp4.php.net (Postfix) with ESMTPS
	for <internals@lists.php.net>; Thu,  9 Jun 2022 09:34:26 -0700 (PDT)
Received: from compute1.internal (compute1.nyi.internal [10.202.2.41])
	by mailout.west.internal (Postfix) with ESMTP id 4B84C32003D3
	for <internals@lists.php.net>; Thu,  9 Jun 2022 12:34:24 -0400 (EDT)
Received: from imap52 ([10.202.2.102])
  by compute1.internal (MEProxy); Thu, 09 Jun 2022 12:34:24 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
	garfieldtech.com; h=cc:content-type:date:date:from:from
	:in-reply-to:message-id:mime-version:reply-to:sender:subject
	:subject:to:to; s=fm2; t=1654792463; x=1654878863; bh=0dOxrh5QhX
	AbBGYVxDNvJXRppOOavZs3ydd7b1T3apo=; b=n7ymJazb/FZ1JEN1O38tzt1N6x
	sMFTA1VvarnnqYNnmHeQS8vjoICu1qjY+vGhaFsBEc2sIWdaNKATEPn2w20EnJZA
	vtlYA6lHW1CaaDnhFcQUlIVy0/icZLxYDmPLyJriAsEyuhpKxkaE74IyYeF33Hs1
	b91whX1JEHYKKxn+NLIOIn4ZR+pOoszXmfdiYWf6WZ8N7L0h/38xfQMgNSnv3UCq
	Mc6+DtpKoMa/PiD8tODJW6QaMv+l/yjW/y47E6/U7oWDZdM8Ib7rvSwHjZkwSHPq
	W2Nzj+5rFAL+edIbPpzEcrR869rxjFOtfQOphiYle1ZvqgOQqHmBLyXZThoA==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
	messagingengine.com; h=cc:content-type:date:date:feedback-id
	:feedback-id:from:from:in-reply-to:message-id:mime-version
	:reply-to:sender:subject:subject:to:to:x-me-proxy:x-me-proxy
	:x-me-sender:x-me-sender:x-sasl-enc; s=fm2; t=1654792463; x=
	1654878863; bh=0dOxrh5QhXAbBGYVxDNvJXRppOOavZs3ydd7b1T3apo=; b=u
	lInQ4PWUHFQx66CLMr0YiU72f/ssU7frAauvMBxoPNvs5EcjK/j1jfSSKrTykDbJ
	D75MpZoP7R80MriCXOMnpZDItNbnZ4VJH91cCJ2T3VEFa/0x4MuyjSedxxAV4RX+
	8jQ8lUpzYLo+fmXxygFJxb3J2tgltZMpCqfoLi5TZemquosMR6BXXZK/tPL+mi8f
	C5wjl7rhD600FlDL+tZ6XIVG02yFDOcYHiixkuT/hPEbqdL3ubF2u0BaaExgjA/3
	w78Z0qXbxZcE4jAv2kfuJ+PfXSJKogIm3249qoRe0o1d2isZE7dOOTWGPyRRW+ua
	8PpPTaABQpV4sdc6BY9DA==
X-ME-Sender: <xms:DyGiYpgxdKrPgfaDI80kHLs_ShdoFWWAWatY32F0rVPBH5JDOU8zMQ>
    <xme:DyGiYuDJHciew2B9co2oGY7DA7PduPehg8LHNWTffKKLubr1xJ5_hLDray8amrCJu
    emmzxHf7Y6IqQ>
X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvfedruddtledgleejucetufdoteggodetrfdotf
    fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen
    uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne
    cujfgurhepofgfggfkfffhvffutgesthdtredtreertdenucfhrhhomhepfdfnrghrrhih
    ucfirghrfhhivghlugdfuceolhgrrhhrhiesghgrrhhfihgvlhguthgvtghhrdgtohhmqe
    enucggtffrrghtthgvrhhnpeegheffiefhtdekfeevffeuieeihfejudfhuefhtdetleel
    hfdvjeetkefggfeuieenucffohhmrghinhepphhhphdrnhgvthenucevlhhushhtvghruf
    hiiigvpedtnecurfgrrhgrmhepmhgrihhlfhhrohhmpehlrghrrhihsehgrghrfhhivghl
    ughtvggthhdrtghomh
X-ME-Proxy: <xmx:DyGiYpGM7knJwb0m7dxzIi_bPpYi3jWyehKFb8rfa8IcPBUIGOjSVQ>
    <xmx:DyGiYuSLa2Uwbt3CImsAJtABC5Seq3N6VMw_GaQap6Sp3O3WyOSkyA>
    <xmx:DyGiYmws7bgIu6J1-iyc-q0ZG7UFOnn-oCrvRW3OGIs--uSpLCerWQ>
    <xmx:DyGiYuiQardSTuYCrcHnlD-p-om4_47zfEcQWL8OMjnvijruyhmy6w>
Feedback-ID: i8414410d:Fastmail
Received: by mailuser.nyi.internal (Postfix, from userid 501)
	id 78B77C6008A; Thu,  9 Jun 2022 12:34:23 -0400 (EDT)
X-Mailer: MessagingEngine.com Webmail Interface
User-Agent: Cyrus-JMAP/3.7.0-alpha0-692-gb287c361f5-fm-20220603.003-gb287c361
Mime-Version: 1.0
Message-ID: <2b35605f-8da8-46b1-aec3-00bd1bfe47fd@www.fastmail.com>
Date: Thu, 09 Jun 2022 11:34:03 -0500
To: "php internals" <internals@lists.php.net>
Content-Type: text/plain
Subject: [RFC] Short Closures 2, aka auto-capture take 3
From: larry@garfieldtech.com ("Larry Garfield")

Last year, Nuno Maduro and I put together an RFC for combining the multi-line capabilities of long-closures with the auto-capture compactness of short-closures.  That RFC didn't fully go to completion due to concerns over the performance impact, which Nuno and I didn't have bandwidth to resolve.

Arnaud Le Blanc has now picked up the flag with an improved implementation that includes benchmarks showing an effectively net-zero performance impact, aka, good news as it avoids over-capturing.

The RFC has therefore been overhauled accordingly and is now ready for consideration.

https://wiki.php.net/rfc/auto-capture-closure

-- 
  Larry Garfield
  larry@garfieldtech.com