On Thu, Jan 1, 2015 at 4:59 PM, Marcio Almada <marcio.w...@gmail.com> wrote:

> The battle between strict type declarations vs coercive has been here for a
> while. My problem with coercion in detriment of strictness is
> that sometimes you DON'T WANT TYPE CASTING AT ALL. This new feature would
> create serious impediments. So I wonder if we couldn't have both (strict
> and coercive types declarations) and leave the current proposed type
> hinting syntax reserved for strict type declarations? Like in:
>
>     function(int $a, (int) $b) {
>          // $a will be strict
>          // $b will be type casted
>     }
>
> This way we can actually choose when to cast and when to be strict and both
> features could be voted independently without affect each other possible
> future adoptions.
>

for the record this was proposed (as an idea) previously with the exact
same syntax(the earlies mention I could find in my mailbox was from Derick
from 2009: http://comments.gmane.org/gmane.comp.php.devel/57653 but I
remember seeing it every time when this discussion happens).
If somebody is interested in previous attempts/discussion on the topic,
here are some links for starters:
http://nikic.github.io/2012/03/06/Scalar-type-hinting-is-harder-than-you-think.html
http://blog.ircmaxell.com/2012/03/parameter-type-casting-in-php.html
https://wiki.php.net/rfc/parameter_type_casting_hints
https://wiki.php.net/rfc/typechecking

-- 
Ferenc Kovács
@Tyr43l - http://tyrael.hu

Reply via email to