Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:71082 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 77349 invoked from network); 12 Jan 2014 10:27:27 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 12 Jan 2014 10:27:27 -0000 Authentication-Results: pb1.pair.com header.from=nikita.ppv@gmail.com; sender-id=pass Authentication-Results: pb1.pair.com smtp.mail=nikita.ppv@gmail.com; spf=pass; sender-id=pass Received-SPF: pass (pb1.pair.com: domain gmail.com designates 209.85.214.174 as permitted sender) X-PHP-List-Original-Sender: nikita.ppv@gmail.com X-Host-Fingerprint: 209.85.214.174 mail-ob0-f174.google.com Received: from [209.85.214.174] ([209.85.214.174:35015] helo=mail-ob0-f174.google.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id 26/70-09546-E0E62D25 for ; Sun, 12 Jan 2014 05:27:26 -0500 Received: by mail-ob0-f174.google.com with SMTP id va2so4585385obc.5 for ; Sun, 12 Jan 2014 02:27:23 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=IzUn29VZYfEZSviw9tSXzBpGlrsxlqLtD3H/squpd9M=; b=JqHq7pgHafExjWX/JzSjA8XOuLIWJvCrh7rBAsVwiAQJJKbY3qHSyVFApZr61CQyvl Wtyli53DKsi5wErX3zXZCiM8qnyBB6UwRCmiF95cMUoje6FBZ89hYifb8ppj7GACYPI+ bjouRT2O2edDF2K2lmr+sMHXcjSes2uUBbK8EJnP7/pTSLFIY3Ugm9C8oScodFvBq6cP VCFygQ3qZOO3TmSyEyD+YR9Lb3Nyx/b0sL6klQ8X7C0/giVyK3Ov/GMEUIuO4hSmJf3p vsvBM1SEuHl6cRPY4bIRnTiEt44LislIJtuTyY1c9VIx/QwCylBKDMgIBtXxloF+4VKh J7dA== MIME-Version: 1.0 X-Received: by 10.60.65.5 with SMTP id t5mr15985377oes.19.1389522442993; Sun, 12 Jan 2014 02:27:22 -0800 (PST) Received: by 10.182.54.112 with HTTP; Sun, 12 Jan 2014 02:27:22 -0800 (PST) In-Reply-To: <581A185E-0F00-4B49-AA87-859D75E63BA2@googlemail.com> References: <581A185E-0F00-4B49-AA87-859D75E63BA2@googlemail.com> Date: Sun, 12 Jan 2014 11:27:22 +0100 Message-ID: To: Kevin Ingwersen Cc: PHP internals Content-Type: multipart/alternative; boundary=001a11c1d6a89f46dd04efc3674f Subject: Re: [PHP-DEV] Revisiting the "Named Arguments" RFC From: nikita.ppv@gmail.com (Nikita Popov) --001a11c1d6a89f46dd04efc3674f Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: quoted-printable On Sat, Jan 11, 2014 at 4:42 PM, Kevin Ingwersen wrote: > Hello there. > > Within one of the recent votes, I was reminded upon an RFC for named > parameters/arguments - to be exact, this one: > https://wiki.php.net/rfc/named_params > > I just wanted to know if this RFC is still in discussion, has been > dropped, or what else is currently being up with it. Because in my opinio= n, > that=92d be a very useful addition - as many modern languages support thi= s > kind of feature already. The only language that I personaly am using that > supports that is Objective-C - and in there, it is very useful. Although > its quite different - it=92s a different call-style entirely - I could > imagine the implementation from the link above to be very useful in PHP. > > It would be great to know the current state of the RFC, as I didn=92t rea= lly > see anything of its current state on the page itself. > A quick summary: The open questions are mostly resolved, namely: Variadics / unpacking on named args should use same syntax as for not-named args. No signature checks should be introduced, instead use runtime errors. The question of syntax wasn't yet entirely clear, though that's something one could just vote, if need be. The patch itself is also finished from the "general feature implementation" side. What is missing are updates to internal functions. Namely all arginfo structs should be made consistent across functions and synced with the docs. Also we need to ensure that argument parsing for internal functions works correctly everywhere. Feature freeze for 5.6 is in two months and the last two points require a huge amount of work (because of the sheer number of functions in our standard library). I started a bit on the arginfo part, by updating the parameter names for array functions in the docs, but didn't continue that effort as other things got in the way. I don't think I'll have enough time to finish this before 5.6 FF. So, likely this will be postponed to the next version of PHP ;) Nikita --001a11c1d6a89f46dd04efc3674f--