Re: [RFC] Scalar Type Hinting With Casts (re-opening)
| From: | Andrey Andreev | Date: | Tue, 15 Jul 2014 20:05:46 +0000 |
| Subject: | Re: [RFC] Scalar Type Hinting With Casts (re-opening) | ||
| References: | 1 2 3 4 5 6 7 8 9 10 11 | Groups: | php.internals |
| Request: | Send a blank email to internals+get-75562@lists.php.net to get a copy of this message | ||
On Tue, Jul 15, 2014 at 11:02 PM, Andrey Andreev <narf@devilix.net> wrote:
> On Tue, Jul 15, 2014 at 10:48 PM, Andrea Faulds <ajf@ajf.me> wrote:
>>
>> On 15 Jul 2014, at 20:43, Andrey Andreev <narf@devilix.net> wrote:
>>
>>> I'm sorry, I know what you mean here and I'm not criticizing you
>>> specifically (in fact, I'm intentionally taking it ouf of context),
>>> but that's "PHP internals", not "PHP community".
>>>
>>> The PHP community that I know, wants to have _both_ type cast hinting
>>> and strict type declarations.
>>
>> I’m not sure that’s quite the case. There are camps wanting one, there are camps
>> wanting the other, I suppose some want both, but to me that seems like a not-a-compromise compromise
>> solution. The point of this RFC, to some extent, is to be a reasonable compromise between completely
>> strict declarations and cast hinting, providing the safety of the first and the flexibility of the
>> second. I think it strikes the balance well.
>
> Unless you really force the camps to pick one by saying "you can't
> have Y if we've got X" (to which there's no technical limitation, so
> that's not true), then a camp that wants X doesn't mean a camp that
> doesn't want Y, so we end up with:
>
> Camps wanting one + camps wanting another == a larger camp that
> wants all of it
>
> A compromise isn't excluded by this. It would just have to be a "ok,
> let's do X right now and we'll think about Y later" compromise (point
> being, don't exclude Y) instead of a "let's have a mixed something
> between the two that nobody really, really likes" one.
To further clarify, it also doesn't mean a promise on Y, just don't
provocate people to bring it up again when it's not the current task.
My $0.02.