Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:79820 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 60452 invoked from network); 20 Dec 2014 00:44:01 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 20 Dec 2014 00:44:01 -0000 Authentication-Results: pb1.pair.com smtp.mail=tjerk.meesters@gmail.com; spf=pass; sender-id=pass Authentication-Results: pb1.pair.com header.from=tjerk.meesters@gmail.com; sender-id=pass Received-SPF: pass (pb1.pair.com: domain gmail.com designates 209.85.192.174 as permitted sender) X-PHP-List-Original-Sender: tjerk.meesters@gmail.com X-Host-Fingerprint: 209.85.192.174 mail-pd0-f174.google.com Received: from [209.85.192.174] ([209.85.192.174:46926] helo=mail-pd0-f174.google.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id D9/10-58349-F46C4945 for ; Fri, 19 Dec 2014 19:44:00 -0500 Received: by mail-pd0-f174.google.com with SMTP id fp1so2180439pdb.33 for ; Fri, 19 Dec 2014 16:43:56 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=content-type:mime-version:subject:from:in-reply-to:date:cc :content-transfer-encoding:message-id:references:to; bh=CyOPWba5Ktc6cOn10j/72l3/7wkBir2BcgTIcx/jCS4=; b=MVZCBfqYaZl08lm3OUqD2Lo2ku5LW59XMBcgIdY9ubI3ZComauA/003/kqF+KK7MHk fAmeXVJf7Wfm7t+faD4ulRRSZ4YI6LczoIt4/vGypld6iosz3h3N6BfN5S20lEv1AgZ8 9hQXln3WCnuMoljioFuwDM0IBZBWJ1Pj3a8RlsNwfp+iRzG/q5eRzbhFJaW8Veet8/5X UHb6q+PKmSgnEYxYG2MkUdANmWv5Kb72MPMlEQJ19Syl9cT/DqoqMpqaKBr/XiEMJOq1 Ue7aa4vtC91C8ChkZaBhSOxzv6NvdnD8g5JiiJKUqtgsVPOX1jeDNXJnw7JI2JinUVVF BYbg== X-Received: by 10.70.91.99 with SMTP id cd3mr16334230pdb.117.1419036236807; Fri, 19 Dec 2014 16:43:56 -0800 (PST) Received: from unknown_0c-4d-e9-aa-30-37.gateway.2wire.net (bb121-7-198-24.singnet.com.sg. [121.7.198.24]) by mx.google.com with ESMTPSA id de7sm10638835pdb.74.2014.12.19.16.43.54 (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Fri, 19 Dec 2014 16:43:55 -0800 (PST) Content-Type: text/plain; charset=utf-8 Mime-Version: 1.0 (Mac OS X Mail 8.1 \(1993\)) In-Reply-To: Date: Sat, 20 Dec 2014 08:43:52 +0800 Cc: Florian Margaine , PHP Internals Content-Transfer-Encoding: quoted-printable Message-ID: References: To: guilhermeblanco@gmail.com X-Mailer: Apple Mail (2.1993) Subject: Re: [PHP-DEV] [VOTE] Abstract final / Static classes From: tjerk.meesters@gmail.com (Tjerk Meesters) > On 13 Dec 2014, at 00:35, guilhermeblanco@gmail.com wrote: >=20 > RFC is updated exposing both possible usages with both explanations. > Hope it doesn't confuse even more. Hi, in your "As static class=E2=80=9D example, it doesn=E2=80=99t really = demonstrate that you can omit the =E2=80=9Cstatic=E2=80=9D modifier from = the function declarations. Also, it=E2=80=99s not clear if the same applies to =E2=80=9CAs abstract = final=E2=80=9D. >=20 > On Fri, Dec 12, 2014 at 11:30 AM, Florian Margaine = > wrote: >>=20 >> Hi, >>=20 >> Le 12 d=C3=A9c. 2014 17:28, "guilhermeblanco@gmail.com" < >> guilhermeblanco@gmail.com> a =C3=A9crit : >>>=20 >>> It's part of the history of that RFC, accessible here: >> https://wiki.php.net/rfc/abstract_final_class?rev=3D1417060830 >>>=20 >>=20 >> But then it isn't clear as of right now. What is proposed? The = example? >> The votes? What does `final` has to do with `static`? >>=20 >> I'm confused. >>=20 >>> On Fri, Dec 12, 2014 at 11:18 AM, Florian Margaine = >> wrote: >>>>=20 >>>> Hi, >>>>=20 >>>>=20 >>>>=20 >>>> On Fri, Dec 12, 2014 at 5:12 PM, guilhermeblanco@gmail.com < >> guilhermeblanco@gmail.com> wrote: >>>>>=20 >>>>> Hi internals, >>>>>=20 >>>>> After a good round of discussion, I updated the original "abstract >> final >>>>> class" proposal into a "static class" proposal. >>>>> However, I kept both patches online so it's up to voters decide = which >> one >>>>> it could be implemented. >>>>> Patches are now complete and voting phase starts now and will be = active >>>>> until 12/19/2014. >>>>>=20 >>>>> As this is a language update, it requires 2/3 pro or against the >> feature. >>>>>=20 >>>>> https://wiki.php.net/rfc/abstract_final_class >>>>=20 >>>>=20 >>>> Why does the example use `final`? >>>>=20 >>>> final static class Environment >>>> { >>>> private static $rootDirectory =3D '/var/www/project'; >>>> public static function getRootDirectory() >>>> { >>>> return self::$rootDirectory; >>>> } >>>> } >>>>=20 >>>> Also, the vote presents 2 options. The RFC is in a weird state = where it >> mentions "abstract final" but doesn't explain anything about them. = The >> votes don't seem to be what the example is... >>>>=20 >>>> Could you edit your RFC? >>>>=20 >>>>>=20 >>>>>=20 >>>>>=20 >>>>> Happy voting! >>>>>=20 >>>>> Regards, >>>>>=20 >>>>> -- >>>>> Guilherme Blanco >>>>> MSN: guilhermeblanco@hotmail.com >>>>> GTalk: guilhermeblanco >>>>> Toronto - ON/Canada >>>>=20 >>>>=20 >>>> Cheers, >>>> -- >>>> Florian Margaine >>>=20 >>>=20 >>>=20 >>> -- >>> Guilherme Blanco >>> MSN: guilhermeblanco@hotmail.com >>> GTalk: guilhermeblanco >>> Toronto - ON/Canada >>=20 >> Cheers, >> Florian >>=20 >=20 >=20 > --=20 > Guilherme Blanco > MSN: guilhermeblanco@hotmail.com > GTalk: guilhermeblanco > Toronto - ON/Canada