On Thu, Jul 29, 2010 at 8:18 AM, Kalle Sommer Nielsen <ka...@php.net> wrote:
>
> Hello Zeev
>
> 2010/7/29 Zeev Suraski <z...@zend.com>:
> > With the revived interest in the neighbourhood of type hints in the last few
> > days I'm resending this email from a few weeks ago.
> >
> > In a nutshell, use auto-conversion for scalar type hints, and modify the
> > conversion rules throughout PHP to handle 'senseless' conversions that
> > result in data loss differently - by emitting E_TYPE.
> >
> > Zeev
>
> Ill be very much against adding a new error level for typing, E_NOTICE
> or E_WARNING should be *enough* for letting the user know of any data
> loss. I don't think it would be a good idea for adding a new error
> level for specific language features, if we went to use exceptions for
> everything it would however have been a sleek solution but we don't.
>
> As for which solution we should take, we need a userland vote and a
> core vote foreach of the 3 solutions we have atm.:
> * Strict typehinting (as whats currently in trunk)
> * Weak typehinting (with silent autoconvertion)
> * Weak typehinting (that emits warnings/notices/type warnings)
>
> It would be nice to have such a vote so the coming RM's also have
> control over which solution is preferered and eventually why its
> preferered.

While on the subject of type-hinting, I propose the idea of a
"callback" type hint, which accepts anything that is callable. This is
useful because it allows a function to be sure a given argument is
callable, and can then safely use it to call a function which requires
a callback, or safely call it using $f(). I think this also falls in
the category of array/Object type hints meaning that it doesn't
present the controversies of strict vs. weak, so I think it could be a
good candidate for inclusion. I made a patch a few weeks back to do
this and can post it if anyone is interested.

Best regards,
--Matthew

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

Reply via email to