Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:93745 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 85253 invoked from network); 3 Jun 2016 13:40:45 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 3 Jun 2016 13:40:45 -0000 Authentication-Results: pb1.pair.com smtp.mail=theodorejb@outlook.com; spf=pass; sender-id=pass Authentication-Results: pb1.pair.com header.from=theodorejb@outlook.com; sender-id=pass Received-SPF: pass (pb1.pair.com: domain outlook.com designates 65.54.190.76 as permitted sender) X-PHP-List-Original-Sender: theodorejb@outlook.com X-Host-Fingerprint: 65.54.190.76 bay004-omc2s1.hotmail.com Received: from [65.54.190.76] ([65.54.190.76:56883] helo=BAY004-OMC2S1.hotmail.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id 66/93-56709-AD881575 for ; Fri, 03 Jun 2016 09:40:44 -0400 Received: from BAY178-W8 ([65.54.190.123]) by BAY004-OMC2S1.hotmail.com over TLS secured channel with Microsoft SMTPSVC(7.5.7601.23008); Fri, 3 Jun 2016 06:40:40 -0700 X-TMN: [tMwBB8vOagJCDzEdnQhd8Z7H++yComQ6] X-Originating-Email: [theodorejb@outlook.com] Message-ID: To: Bob Weinand , internals Date: Fri, 3 Jun 2016 08:40:40 -0500 Importance: Normal In-Reply-To: References: Content-Type: text/plain; charset="Windows-1252" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-OriginalArrivalTime: 03 Jun 2016 13:40:40.0819 (UTC) FILETIME=[84EE7430:01D1BD9D] Subject: RE: [PHP-DEV] [RFC] [PRE-VOTE] Union types From: theodorejb@outlook.com (Theodore Brown) On Thu=2C 2 June 2016 Bob Weinand wrote:=0A= > Hey all=2C=0A= >=A0=0A= > I know=2C it has been quite some time =85 but it's still well in time for= 7.1.=0A= >=A0=0A= > Time to move on and put Union types to vote soon. [In the next 1-2 days]= =0A= >=A0=0A= > We have done some changes to the RFC to emphasize the appeal of=0A= > union types as well as clarified what exactly we will vote on.=0A= >=A0=0A= > If you have more feedback=2C it's welcome: https://wiki.php.net/rfc/union= _types=0A= >=A0=0A= > Thanks=2C=0A= > Bob=0A= =0A= Thank you (and Levi) for this RFC! I can't vote=2C but I'd like to=0A= weigh in with my userland perspective.=0A= =0A= Just last week I was working with several functions that accept=0A= array|Traversable and array|string parameters. Union types would=0A= make it easier to document these functions=2C as well as eliminate the=0A= boilerplate code currently required to validate their parameters.=0A= =0A= I am also in favor of the proposal to replace ?QuestionMarkNullables=0A= with union|null. Having a single way to declare nullable types will=0A= keep the reflection API simpler=2C make things easier for static=0A= analysis tools=2C and prevent developers from having to wonder which=0A= syntax they should use for a given function. This would be a big win=0A= for language consistency=2C and this is probably our only chance to=0A= make the change without breaking BC.=0A= =0A= Theodore Brown =