Hello Oliver,

  the short answer is we don't want virtual inheritance.

marcus

Thursday, August 25, 2005, 10:30:34 PM, you wrote:

> Hello gods of PHP development ;-)

> I'm just a PHP-programmer, but I've been reading the PHP6 discussions
> here for a while, especially the talk about MI vs interfaces.
> I've been all for MI up to the moment where Marcus Boerger came up with
> this:

>> class Document implements Printable {
>>   delegate Printable $print;
>>
>>   function __construct() {
>>     $this->print = new PrintHandler($this);
>>   }

> This combines the pros of MI with the advantages of "favour composition
> over inheritance". I took this snippet an posted is an argument against
> MI on our team's private newsgroup server. Then there was a reaction
> that left me baffled:

>> MI in PHP? Sure, they have to. MI being polarising is no reason that
>> it shouldn't be implemented. MI can be very handy and it belongs in
>> a language used by people that want quick solutions. People being
>> all against it for academic or paedagogic reasons have simply
>> chosen the wrong battleground for their disussions.

> This is a valid argument. PHP has always been the BORG language that
> assimilates every positive aspect of other languages. Nowadays PHP users
> can use complex class hierarchies, interfaces, expections ans a lot
> more. But they may still use simple functions and use "global" for their
> variables.

> So why not? Give the "users" namespaces and hide them if they don't use
> them (global namespace for all existing code). Give them multiple
> inheritance but retain the interfaces. And first of all, implement
> Marcus Boergers suggestion for native "delegates". *g*

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

Reply via email to