Hm, a touch of civility. OK let me retry then.

So what I tried to say is this:

If you treat ::$ as a single construct in your mind then you will get
classname::$foo() wrong. Of course the rule is that classname::.....() is a
method call but it's less evident by just looking at the code.

I have suggested that removing the $foo() construct completely, $foo(),
$bar->$foo(), bar::$foo() all would solve this and although it breaks backwards
compatibility, there is a perfect replacement by using call_user_func() instead.

I have implied that PHP does not care about backwards compatibility breaking and
this especially will be true for the next release. This was supported by my
experience working with various PHP versions over many years.

I can of course understand that code cleanup needs to make certain things go
away. If noone maintains ereg, it needs to be deprecated. Fine. It now throws an
E_DEPRECATE error which is also completely new. Once again I
understand the reasons for introducing E_DEPRECATE but it does not
change the nature of the beast.

Some code cleanup made necessary to not accept NULL as an empty array
which might be more debatable because NULL is casted happily to zero
and empty string as necessary without a word and so why it's not to
empty array. But, that's not the point and it's way too late by many
years anyways. The point is that PHP does break backwards
compatibility going against the public perception. This same false
belief is seemingly held by some PHP developers too -- didn't Adam
just say that such changes need to be fought hard and supported by
strong arguments? I want to see strong arguments for not casting NULLs
into empty arrays :)

I could report breakage but I sincerely doubt it would change anything
because they are made for good. Once again: the hell is not the
changes, it's the expectation that old code runs on new PHP
unmodified.

As for Drupal, very briefly, I only included it to show that I use PHP
and a lot and there is more than me here. If by 'no comment' you mean
Drupal sucks, then I merrily agree with you. Two things to note: one,
believe me when I say you won't find anyone alive who knows more about
the shortcomings of Drupal architecture and implementation than me. By
this point, I am probably responsible for more than I want to admit.
Two, "All content management systems suck, Drupal just happens to suck
less. -- Boris Mann at DrupalCON Amsterdam, August 2005."
http://buytaert.net/drupal-sucks-less

Regards

Karoly Negyesi

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

Reply via email to