On Dec 22, 2011, at 1:51 PM, Sebastian Bergmann wrote:

> Am 22.12.2011 19:41, schrieb Rasmus Lerdorf:
>> This is not a step forward. If the author of age_check() really doesn't
>> want to accept type-juggled arguments, then it is easy enough to do a
>> strict type check in the function itself. This puts the effort in the
>> correct place and doesn't encourage this type of coding.
> 
> Putting such code into the "correct" place does not change the problem
> that you and Stas describe
> 
>     function age_check($age)
>     {
>         if (!is_int($age)) {
>             throw new InvalidArgumentException;
>         }
>     }
> 
> With the above code, the caller needs to cast and the writer of the
> age_check() function has to copy/paste/adapt these checks to all the
> correct places ...

There are cases, such as the one you pointed out, that requires type casting.  
We're just trying to point out a situation where, if scalars were allowed to be 
typed, would produce code littered with type casts.  Point taken though.

> 
> I am not advocating type hints for scalars, I am just saying that this
> argument is not really a good one against it.
> 
> -- 
> Sebastian Bergmann                    Co-Founder and Principal Consultant
> http://sebastian-bergmann.de/                           http://thePHP.cc/
> 
> -- 
> PHP Internals - PHP Runtime Development Mailing List
> To unsubscribe, visit: http://www.php.net/unsub.php
> 


--
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to