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