On Sat, Mar 14, 2015 at 4:30 PM, Rasmus Lerdorf <ras...@lerdorf.com> wrote: > On 03/15/2015 07:31 AM, Philip Sturgeon wrote: >> On Sat, Mar 14, 2015 at 7:38 AM, Bob Weinand <bobw...@hotmail.com> wrote: >>>> Am 14.03.2015 um 10:21 schrieb Pavel Kouřil <pajou...@gmail.com>: >>>> >>>> On Saturday, March 14, 2015, Levi Morrison <le...@php.net> wrote: >>>>> RFC Link: https://wiki.php.net/rfc/reserve_more_types_in_php_7 >>>>> >>>>> The proposal has changed from the original. It no longer reserves the >>>>> aliases out of the interest of reserving the smallest useful, >>>>> uncontroversial subset. Some people want to remove aliases for these >>>>> types so in the interest of being as uncontroversial as possible I am >>>>> no longer proposing to remove them. >>>>> >>>>> This will go into voting on March 15th unless something comes up >>>>> between now and then to persuade me otherwise. >>>>> >>>>> -- >>>>> PHP Internals - PHP Runtime Development Mailing List >>>>> To unsubscribe, visit: http://www.php.net/unsub.php >>>>> >>>>> >>>> >>>> Hello, >>>> >>>> why do you consider a "true" and "false" as a type? It's not a type. it's a >>>> value? >>>> >>>> Regards >>>> Pavel Kouril >>> >>> These aren't types. But useful for e.g. union types (int|false). [By the >>> way they're internally handled as different types… but that's an >>> implementation detail…] >>> >>> Also, he doesn't call them anywhere types, it's just the title. >>> >>> Bob >>> -- >>> PHP Internals - PHP Runtime Development Mailing List >>> To unsubscribe, visit: http://www.php.net/unsub.php >>> >> >> This is a solid plan. Vote this and everyone should +1 it, so if this >> scalar squabble results in a a 0-0-0 score we can at least add scalars >> later. > > This is not quite that obvious I don't think. If > https://wiki.php.net/rfc/context_sensitive_lexer isn't ready in time for > 7.0 and we don't need to reserve these for one of the STH RFCs then we > should hold off and do it alongside the context sensitive lexer change > or we are going to needlessly break a ton of code including Drupal8: > > > https://github.com/drupal/drupal/blob/8.0.x/core/lib/Drupal/Component/Utility/String.php#L15
Rasmus (and others), How would you feel about emitting E_DEPRECATED whenever one of these[1] names is used for a class declaration? Emitting E_DEPRECATED is less helpful but less painful. It's not my preference (just like emitting E_DEPRECATED for PHP 4 constructors was not my preference) but ultimately I care about the eventual result. I'm happy to wait as long as we've agreed to fix it eventually. Of course, if a scalar types RFC passes most of these will be reserved anyway. Right now it is a coin toss if Anthony's proposal will pass (it keeps flipping back and forth). [1] int, float, bool, string, true, false, null -- PHP Internals - PHP Runtime Development Mailing List To unsubscribe, visit: http://www.php.net/unsub.php