Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:82193 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 84310 invoked from network); 8 Feb 2015 23:30:56 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 8 Feb 2015 23:30:56 -0000 Authentication-Results: pb1.pair.com header.from=rowan.collins@gmail.com; sender-id=pass Authentication-Results: pb1.pair.com smtp.mail=rowan.collins@gmail.com; spf=pass; sender-id=pass Received-SPF: pass (pb1.pair.com: domain gmail.com designates 209.85.212.172 as permitted sender) X-PHP-List-Original-Sender: rowan.collins@gmail.com X-Host-Fingerprint: 209.85.212.172 mail-wi0-f172.google.com Received: from [209.85.212.172] ([209.85.212.172:51628] helo=mail-wi0-f172.google.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id 63/6B-26926-FA1F7D45 for ; Sun, 08 Feb 2015 18:30:56 -0500 Received: by mail-wi0-f172.google.com with SMTP id z2so2376425wiv.5 for ; Sun, 08 Feb 2015 15:30:52 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=message-id:date:from:user-agent:mime-version:to:subject:references :in-reply-to:content-type:content-transfer-encoding; bh=GIyCcNKo7DCNBi4x+D0pHZsRDZ+gNzcKzXAZw19brcg=; b=gz/X/8O5TRflo+MqATQC0PJl6NWkuHOB/Mi6z+cr1o0XpLM02p656c7GUBSgE2vk8Q w+PEAKHJz9NtvuKc4g7b+a1d24onIHz6lHFX78TcZtcynE9q6dnUS9pxP3S+yDEANtjZ r/yu+LCqQOdldts9XcbC64wkDgXsZJ8hP5pW+zij48PtLNDd4EpIoQ65aXgyefe/UFpE h7fr/ikeUl3jQxDXCaUEwjp5C+iWXxJ+DD1I2EDjH49rDgYsygjMnDsGhDze3vbvOSxC UfLwQ02/VsoNs5gitMhtuFDDUVcd/23+ih4TQJrQPhcdcYSyc833kbsja4OFNJAysTzS wWJA== X-Received: by 10.194.179.194 with SMTP id di2mr34758067wjc.4.1423438252547; Sun, 08 Feb 2015 15:30:52 -0800 (PST) Received: from [192.168.0.2] (cpc68956-brig15-2-0-cust215.3-3.cable.virginm.net. [82.6.24.216]) by mx.google.com with ESMTPSA id ul1sm13902116wjc.0.2015.02.08.15.30.51 for (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Sun, 08 Feb 2015 15:30:51 -0800 (PST) Message-ID: <54D7F1AB.1070302@gmail.com> Date: Sun, 08 Feb 2015 23:30:51 +0000 User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:31.0) Gecko/20100101 Thunderbird/31.4.0 MIME-Version: 1.0 To: internals@lists.php.net References: <8703B53E-2C4A-4AC6-95C4-D4F19C6D5221@ajf.me> <048c002a67c3d75afd802025b6946362@mail.gmail.com> In-Reply-To: <048c002a67c3d75afd802025b6946362@mail.gmail.com> Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit Subject: Re: [PHP-DEV] Syntactical change to Scalar Type Hints RFC From: rowan.collins@gmail.com (Rowan Collins) On 08/02/2015 20:33, Zeev Suraski wrote: > FWIW, while I think strict types - stricter than even strict languages - > don't belong in PHP, this syntax is clearly a step up from declare(), which > was definitely not intended for this purpose. I'm kind of intrigued what purpose it *was* intended for. I've always found it a rather odd part of the language, but this seems as logical a use for it as any. For years, it had exactly one "execution directive", which worked in concert with a runtime event handler (ticks=N + register_tick_function). In PHP 5.3, a completely unrelated directive was added, to specify the encoding of the file (something that more obviously has to be detected by the compiler). Was there an original idea of what it would be used for that never came to fruition? Or is there something I'm missing that connects "ticks" and "encoding", but excludes "strict_types"? Regards, -- Rowan Collins [IMSoP]