Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:2808 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 93404 invoked from network); 26 Jun 2003 02:39:55 -0000 Received: from unknown (HELO ied.ac.cn) (211.99.43.218) by pb1.pair.com with SMTP; 26 Jun 2003 02:39:55 -0000 Received: (qmail 4930 invoked by uid 610); 26 Jun 2003 09:50:33 +0800 Received: from localhost (sendmail-bs@127.0.0.1) by localhost with SMTP; 26 Jun 2003 09:50:33 +0800 Date: Thu, 26 Jun 2003 09:50:33 +0800 (CST) X-X-Sender: hewei@web.ied.ac.cn To: Sterling Hughes cc: internals@lists.php.net, , Zeev Suraski , In-Reply-To: <1056591882.28557.198.camel@hasele> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Subject: Re: [PHP-DEV] aggregation? From: hewei@ied.org.cn (Wei He) References: <1056591882.28557.198.camel@hasele> On 25 Jun 2003, Sterling Hughes wrote: > Hey, > > Am I right in assuming that aggregation is going to be removed in PHP5? How could I live without aggregation or multiple inheritance? I have a choice, I prefer the latter. But not a 100% MI as I know there are a lot of debates on 100% MI. What I would like to see is a aggregation like MI. Say class foobar extends foo, bar {} The methods and properties foo has will have higher priority than bar when being inherited by foobar. So parent::method will be foo::method. As of properties, a class can always initialize its properties in a method or even constructor when it is to be extended at a second place. Bar's constructor will not be called automatically. It actually _is_ aggregation right? But without deaggregation and so that no exteral hash table outside Zend, hence no bug like in PHP4. That's my little simple proposal of aggregation-like multiple inheritance. Agree? Wei He