Having two similar syntaxes that work differently - would make the
situation even worse that it is now - I beleive. And I totally agree
with Rasmus - strict typed language mustnt be called PHP. (Just a poor
user's notice to all of you internals' geeks out there)

2010/8/11 Stas Malyshev <smalys...@sugarcrm.com>:
> Hi!
>
>> 1. right now we *have* strict type checks for classes and arrays in the
>>    form of "classname" or "array"
>
> Because classes and arrays were never intechangeable types and there was
> never implicit or explicit conversion between SplRecursiveTreeIterator and
> Zend_Pdf_Generator - it doesn't even make sense to suggest it. There always
> was conversion between int and string or int and bool. These two things are
> completely different.
>
>> 2. the strict scalary type hint patch reuses this same syntax in the
>>    form of<type-name>  to do the same thing in function arguments
>
> It's not a good thing. As I mentioned, primitive types and classes are very
> different in their use cases and established patterns in PHP. Primitive
> types are largely interchangeable, classes are not. (As for arrays, arrays
> really should be a class by their usage patterns etc. but for historic
> reasons... you know)
>
>> 3. we have casting type hints in the rest of the code in the form of
>>    "(int)".
>
> Just to make it simpler and less confusing, of course. It's nothing like
> language having two features that look almost exactly the same but work in
> different way, and using plenty of ()s is an added bonus for all Lisp fans
> out there.
>
>> Some people don't like strict typehints, but the syntax as it currently
>> is regarding type hints is *consistent*. Now, to allow both strict and
>> casting hints, the logical step seems to be, to give the weak typehint
>> advocates their tool as well:
>
> Calling something that works completely differently from all the established
> patterns of PHP - like internal functions, etc. - "*consistent*" requires
> totally new definition of this word.
> --
> Stanislav Malyshev, Software Architect
> SugarCRM: http://www.sugarcrm.com/
> (408)454-6900 ext. 227
>
> --
> 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