Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:83442 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 15904 invoked from network); 21 Feb 2015 22:39:49 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 21 Feb 2015 22:39:49 -0000 Authentication-Results: pb1.pair.com header.from=pajousek@gmail.com; sender-id=pass Authentication-Results: pb1.pair.com smtp.mail=pajousek@gmail.com; spf=pass; sender-id=pass Received-SPF: pass (pb1.pair.com: domain gmail.com designates 209.85.192.53 as permitted sender) X-PHP-List-Original-Sender: pajousek@gmail.com X-Host-Fingerprint: 209.85.192.53 mail-qg0-f53.google.com Received: from [209.85.192.53] ([209.85.192.53:33937] helo=mail-qg0-f53.google.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id E8/49-08895-33909E45 for ; Sat, 21 Feb 2015 17:39:48 -0500 Received: by mail-qg0-f53.google.com with SMTP id f51so19520194qge.12 for ; Sat, 21 Feb 2015 14:39:44 -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:content-transfer-encoding; bh=8xeOXdEZ4+lMcXmQfiJ/21GuIIvZahQsRLm67oALp1w=; b=vDhFBbbdKyhT77g6OWd5/NrCWdq0R07rvKjFA91gGoOWXhS/pJn40p2XOq45jaAcjX 8kLxdtyhR//jokbLbvGHst7FdGdKP0m7Usq4WmVB3pQcC1rbF1Drk+Q7GUhVO/RExMFD THLO2239Kp3W6RfpHztWnyJ03TQx2Gf0oW0U7ivpzL3Wzz0KzpfKqN+4D2soYgwVBc47 WgWRjy4nFvwnGnEEaJ6P0dBZlMM7GtikGsvVzGBdP8fp/KoaGGen9El70pxIV8ViD/9J tT1P+9kRbQ3rRTrGtbB8wefnn/hMtEZfQH9b7pMsYsxka6oJIuJe/v3Nj1PBwcXgaOJz gcnQ== MIME-Version: 1.0 X-Received: by 10.140.231.151 with SMTP id b145mr9742603qhc.22.1424558384744; Sat, 21 Feb 2015 14:39:44 -0800 (PST) Received: by 10.96.160.99 with HTTP; Sat, 21 Feb 2015 14:39:44 -0800 (PST) In-Reply-To: <9aec85c81b49009c6238ff6d8be27cd4@mail.gmail.com> References: <7ef509ef10bb345c792f9d259c7a3fbb@mail.gmail.com> <9aec85c81b49009c6238ff6d8be27cd4@mail.gmail.com> Date: Sat, 21 Feb 2015 23:39:44 +0100 Message-ID: To: Zeev Suraski Cc: Benjamin Eberlei , PHP internals Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Subject: Re: [PHP-DEV] Coercive Scalar Type Hints RFC From: pajousek@gmail.com (=?UTF-8?Q?Pavel_Kou=C5=99il?=) On Sat, Feb 21, 2015 at 11:25 PM, Zeev Suraski wrote: > There=E2=80=99s a fundamental difference between the two RFCs that goes b= eyond > whether using a global INI setting and the other per-file setting. The > fundamental difference is that the endgame of the Dual Mode RFC is having > two modes =E2=80=93 and whatever syntax we=E2=80=99ll add, will be with u= s forever; and in > the Coercive STH RFC =E2=80=93 the endgame is a single mode with no INI e= ntries, > and opening the door to changing the rest of PHP to be consistent with th= e > same rule-set as well (implicit casts). The challenge with the Coercive > STH RFC is figuring out the best transition strategy, but the endgame is > superior IMHO. Hello, the two modes was something that I didn't like, at all, as a userland developer. It seems really scary that decision to add 2 modes would mean that every PHP code could have been written in any of these 2 ways and it would stick forever with PHP, because removing it again if it proved to be a bad feature would be IMHO really painful. So a single mode is infinitely better than 2 modes. Also, personally, I would prefer #1 or #2 version for internal functions, but definitely without an INI switch. Not being able to change it on some hostings could make development for the transition period kinda painful. Regards Pavel Kouril