Re: [PHP-DEV] Re: aggergate vs MI

2002-04-09 Thread Marcus Börger
At 20:30 09.04.2002, you wrote: >>I'm personally in favour of having MI in PHP, with the serious >>alternative being interfaces. I have failed to understand what >>interfaces would mean in a language such as PHP, though, while I can see >>the clear hands-on use for MI. Can you explain how yo

Re: [PHP-DEV] Re: aggergate vs MI

2002-04-09 Thread Shane Caraveo
> > I'm personally in favour of having MI in PHP, with the serious > alternative being interfaces. I have failed to understand what > interfaces would mean in a language such as PHP, though, while I can see > the clear hands-on use for MI. Can you explain how you envision > interfaces as u

Re: [PHP-DEV] Re: aggergate vs MI

2002-04-09 Thread fab wash
it could be a burden, and we want people to use php. Tough decisions :) Fab. >From: Zeev Suraski <[EMAIL PROTECTED]> >To: "Lauri Liinat" <[EMAIL PROTECTED]> >CC: <[EMAIL PROTECTED]> >Subject: Re: [PHP-DEV] Re: aggergate vs MI >Date: Tue, 09 Apr 2

Re: [PHP-DEV] Re: aggergate vs MI

2002-04-09 Thread Zeev Suraski
You described my thoughts *perfectly* - thanks :) Zeev At 16:26 09/04/2002, Lauri Liinat wrote: >hi all, > > > I'm personally in favour of having MI in PHP, with the serious alternative > > being interfaces. I have failed to understand what interfaces would mean > > in a language such as PHP, t

Re: [PHP-DEV] Re: aggergate vs MI

2002-04-09 Thread Zeev Suraski
At 14:03 09/04/2002, Wez Furlong wrote: >On 09/04/02, "Zeev Suraski" <[EMAIL PROTECTED]> wrote: > > COM's a hack, though. It really is. > > What they did in ATL basically > > does a fair amount of magic to give you the ability to inherit code with > > COM's strict binary compatible model... > >CO

RE: [PHP-DEV] Re: aggergate vs MI

2002-04-09 Thread Zeev Suraski
At 13:12 09/04/2002, Pierre-Alain Joye wrote: > > I have failed to understand what interfaces would mean > > in a language such as PHP, though, while I can see the clear hands-on use > > for MI. Can you explain how you envision interfaces as useful constructs > > in PHP, and their advantages ove

Re: [PHP-DEV] Re: aggergate vs MI

2002-04-09 Thread Stig S. Bakken
On Tue, 2002-04-09 at 16:47, brad lafountain wrote: > > --- Lauri Liinat <[EMAIL PROTECTED]> wrote: > > > > hi all, > > > > > I'm personally in favour of having MI in PHP, with the serious alternative > > > being interfaces. I have failed to understand what interfaces would mean > > > in a la

Re: [PHP-DEV] Re: aggergate vs MI

2002-04-09 Thread brad lafountain
--- Lauri Liinat <[EMAIL PROTECTED]> wrote: > > hi all, > > > I'm personally in favour of having MI in PHP, with the serious alternative > > being interfaces. I have failed to understand what interfaces would mean > > in a language such as PHP, though, while I can see the clear hands-on use

Re: [PHP-DEV] Re: aggergate vs MI

2002-04-09 Thread Marcus Börger
At 15:26 09.04.2002, Lauri Liinat wrote: >hi all, > > > I'm personally in favour of having MI in PHP, with the serious alternative > > being interfaces. I have failed to understand what interfaces would mean > > in a language such as PHP, though, while I can see the clear hands-on use > > for MI

Re: [PHP-DEV] Re: aggergate vs MI

2002-04-09 Thread Lauri Liinat
hi all, > I'm personally in favour of having MI in PHP, with the serious alternative > being interfaces. I have failed to understand what interfaces would mean > in a language such as PHP, though, while I can see the clear hands-on use > for MI. 1) the whole concept of interfaces as they ar

RE: [PHP-DEV] Re: aggergate vs MI

2002-04-09 Thread Marcus Börger
At 12:32 09.04.2002, Pierre-Alain Joye wrote: > > Would it be so bad allowing closed source? >I really do not care, but I really appreciate and use only ( for my dev ) >open sources products, but that is not the question, and was a joke ==> ;) >:)) > > > I think having one of MI, aggregation and i

RE: [PHP-DEV] Re: aggergate vs MI

2002-04-09 Thread Lukas Smith
PROTECTED] ___ > -Original Message- > From: Wez Furlong [mailto:[EMAIL PROTECTED]] > Sent: Tuesday, April 09, 2002 1:10 PM > To: Pierre-Alain Joye > Cc: Wez Furlong; Zeev Suraski; [EMAIL PROTECTED]; Kristian Koehntopp; > Stig S. Bakken > Subj

RE: [PHP-DEV] Re: aggergate vs MI

2002-04-09 Thread Wez Furlong
On 09/04/02, "Pierre-Alain Joye" <[EMAIL PROTECTED]> wrote: > > I have failed to understand what interfaces would mean > > in a language such as PHP, though, while I can see the clear hands-on use > > for MI. Can you explain how you envision interfaces as useful constructs > > in PHP, and their a

Re: [PHP-DEV] Re: aggergate vs MI

2002-04-09 Thread Wez Furlong
On 09/04/02, "Zeev Suraski" <[EMAIL PROTECTED]> wrote: > COM's a hack, though. It really is. > What they did in ATL basically > does a fair amount of magic to give you the ability to inherit code with > COM's strict binary compatible model... COM implemented in C/C++ is, as you say, a hack. W

RE: [PHP-DEV] Re: aggergate vs MI

2002-04-09 Thread Pierre-Alain Joye
> Would it be so bad allowing closed source? I really do not care, but I really appreciate and use only ( for my dev ) open sources products, but that is not the question, and was a joke ==> ;) :)) > I think having one of MI, aggregation and interfaces is essential for OO > modelling. I m not a p

RE: [PHP-DEV] Re: aggergate vs MI

2002-04-09 Thread Marcus Börger
At 12:12 09.04.2002, Pierre-Alain Joye wrote: > > I have failed to understand what interfaces would mean > > in a language such as PHP, though, while I can see the clear hands-on use > > for MI. Can you explain how you envision interfaces as useful constructs > > in PHP, and their advantages ove

RE: [PHP-DEV] Re: aggergate vs MI

2002-04-09 Thread Pierre-Alain Joye
> I have failed to understand what interfaces would mean > in a language such as PHP, though, while I can see the clear hands-on use > for MI. Can you explain how you envision interfaces as useful constructs > in PHP, and their advantages over MI, considering the fact all of the > binary compati

Re: [PHP-DEV] Re: aggergate vs MI

2002-04-09 Thread Zeev Suraski
COM's a hack, though. It really is. COM's entire design was derived from the need for binary compatibility between components, which plays absolutely no role in PHP. They had to go through hoops in and some real ugly hacks to achieve their goal (which they have, quite successfully, I have to

Re: [PHP-DEV] Re: aggergate vs MI

2002-04-09 Thread Wez Furlong
COM! COM uses all of this kind of stuff (implemented in various ways through inheritance, aggregation via template classes, proxies and delegates). And why go to all this trouble? So that your code can work with code written by third parties that have no knowledge of your code, nor yours of the

Re: [PHP-DEV] Re: aggergate vs MI

2002-04-09 Thread Zeev Suraski
I'm not saying you can't find a use for it, I'm sure you can. I'm saying that aggregation the way you use it is something that at least I have never seen used anywhere else before. I've never seen an object oriented program that is written without knowing anything about the classes it's going

Re: [PHP-DEV] Re: aggergate vs MI

2002-04-09 Thread Kristian Koehntopp
On Mon, Apr 08, 2002 at 02:44:14PM -0700, brad lafountain wrote: > for($i = 0;$i < 1;$i++) > { > $d = new a; > aggregate($d, "b"); > aggregate($d, "c"); > $d->method(); > } That is $d = new A; aggregate($d, array("B", "C")); for ($i=0; $i<1; $i++) { $d = copy $a; $d->method(); }

Re: [PHP-DEV] Re: aggergate vs MI

2002-04-09 Thread Kristian Koehntopp
On Tue, Apr 09, 2002 at 12:11:11AM +0300, Zeev Suraski wrote: > Having both makes very little sense. Compile-time vs. > run-time in PHP doesn't make any real difference as far as > functionality goes, because the stages are linked together > immediately. Not the point here. In class D extends A

Re: [PHP-DEV] Re: aggergate vs MI

2002-04-09 Thread brad lafountain
--- Zeev Suraski <[EMAIL PROTECTED]> wrote: > At 01:51 09/04/2002, brad lafountain wrote: > >But do you see my point that having ONLY aggregate means that in 90% of the > >case where people will use it its probally a bad idea. They are only using > it > >becuase of the lack of MI. How does aggreg

Re: [PHP-DEV] Re: aggergate vs MI

2002-04-08 Thread Zeev Suraski
At 01:51 09/04/2002, brad lafountain wrote: >But do you see my point that having ONLY aggregate means that in 90% of the >case where people will use it its probally a bad idea. They are only using it >becuase of the lack of MI. How does aggregation solve overwriting methods. Yes, I see the point.

Re: [PHP-DEV] Re: aggergate vs MI

2002-04-08 Thread Yasuo Ohgaki
Brad Lafountain wrote: *SNIP* > But do you see my point that having ONLY aggregate means that in 90% of the > case where people will use it its probally a bad idea. They are only using it > becuase of the lack of MI. How does aggregation solve overwriting methods. > > class a > { > function blah

Re: [PHP-DEV] Re: aggergate vs MI

2002-04-08 Thread Marcus Börger
At 00:53 09.04.2002, you wrote: >--- "Stig S. Bakken" <[EMAIL PROTECTED]> wrote: > > But a class is not defined at runtime, it's only compiled into bytecode > > that, when executed, declares the class. That's what Zeev means when he > > says that the difference between compile-time and runtime i

Re: [PHP-DEV] Re: aggergate vs MI

2002-04-08 Thread Marcus Börger
At 00:40 09.04.2002, Stig S. Bakken wrote: >But a class is not defined at runtime, it's only compiled into bytecode >that, when executed, declares the class. That's what Zeev means when he >says that the difference between compile-time and runtime is not that >big. What i meant with runtime was

Re: [PHP-DEV] Re: aggergate vs MI

2002-04-08 Thread brad lafountain
--- "Stig S. Bakken" <[EMAIL PROTECTED]> wrote: > But a class is not defined at runtime, it's only compiled into bytecode > that, when executed, declares the class. That's what Zeev means when he > says that the difference between compile-time and runtime is not that > big. > > IMHO there is ro

Re: [PHP-DEV] Re: aggergate vs MI

2002-04-08 Thread brad lafountain
--- Zeev Suraski <[EMAIL PROTECTED]> wrote: > At 00:55 09/04/2002, brad lafountain wrote: > > Well i would have totally agreed with you yesterday.. but i have convinced > >myself that there is use for aggregation. Me personally i would never use > it. > >But i can see somepeople using it. > > I

Re: [PHP-DEV] Re: aggergate vs MI

2002-04-08 Thread Stig S. Bakken
But a class is not defined at runtime, it's only compiled into bytecode that, when executed, declares the class. That's what Zeev means when he says that the difference between compile-time and runtime is not that big. IMHO there is room for both aggregate and MI. We have require and include, n

Re: [PHP-DEV] Re: aggergate vs MI

2002-04-08 Thread Marcus Börger
Mybe it would make sence to have MI for compile time and aggregation for run time. So we can have good design with MI and prototyping and testing and quick hacks with aggregeation. But doing compile times work with run time methods? marcus At 23:58 08.04.2002, you wrote: >If MI can be emulated u

Re: [PHP-DEV] Re: aggergate vs MI

2002-04-08 Thread Zeev Suraski
At 00:55 09/04/2002, brad lafountain wrote: > Well i would have totally agreed with you yesterday.. but i have convinced >myself that there is use for aggregation. Me personally i would never use it. >But i can see somepeople using it. It doesn't mean it's a good idea to add it. I used both, an

Re: [PHP-DEV] Re: aggergate vs MI

2002-04-08 Thread brad lafountain
--- Steve Meyers <[EMAIL PROTECTED]> wrote: > If MI can be emulated using aggregation, how hard would it be to add the > syntax for MI to the language, but have it implement it using aggregation? That would be the biggest hack. MI isn't that hard to implement. It probally would take a good dev

Re: [PHP-DEV] Re: aggergate vs MI

2002-04-08 Thread Steve Meyers
If MI can be emulated using aggregation, how hard would it be to add the syntax for MI to the language, but have it implement it using aggregation? Zeev Suraski wrote: > At 00:44 09/04/2002, brad lafountain wrote: >>If aggregation is included then i see it is absoulty necessary to include >>MI

Re: [PHP-DEV] Re: aggergate vs MI

2002-04-08 Thread brad lafountain
--- Zeev Suraski <[EMAIL PROTECTED]> wrote: > At 00:44 09/04/2002, brad lafountain wrote: > >If aggregation is included then i see it is absoulty necessary to include MI > >too. > > In my opinion, only one of them (at most) has room in PHP. Having both is > messy. My personal preference is MI

Re: [PHP-DEV] Re: aggergate vs MI

2002-04-08 Thread Zeev Suraski
At 00:44 09/04/2002, brad lafountain wrote: >If aggregation is included then i see it is absoulty necessary to include MI >too. In my opinion, only one of them (at most) has room in PHP. Having both is messy. My personal preference is MI, which is why I prefer tagging aggregation as experimen

Re: [PHP-DEV] Re: aggergate vs MI

2002-04-08 Thread brad lafountain
--- Zeev Suraski <[EMAIL PROTECTED]> wrote: > Having both makes very little sense. Compile-time vs. run-time in PHP > doesn't make any real difference as far as functionality goes, because the > stages are linked together immediately. > I don't think MI will make it into PHP, now that aggregat

Re: [PHP-DEV] Re: aggergate vs MI

2002-04-08 Thread Zeev Suraski
Having both makes very little sense. Compile-time vs. run-time in PHP doesn't make any real difference as far as functionality goes, because the stages are linked together immediately. I don't think MI will make it into PHP, now that aggregation was introduced... At 18:59 08/04/2002, brad lafo

Re: [PHP-DEV] Re: aggergate vs MI

2002-04-08 Thread brad lafountain
--- Kristian Koehntopp <[EMAIL PROTECTED]> wrote: > On Mon, Apr 08, 2002 at 08:59:39AM -0700, brad lafountain wrote: > > class A; > > class B; > > class C; > > > > $c = new C; > > aggergate($c, "A"); > > aggergate($c, "B"); > > > > Just because they "can". > > Yes of course, but how is this be

Re: [PHP-DEV] Re: aggergate vs MI

2002-04-08 Thread Kristian Koehntopp
On Mon, Apr 08, 2002 at 08:59:39AM -0700, brad lafountain wrote: > class A; > class B; > class C; > > $c = new C; > aggergate($c, "A"); > aggergate($c, "B"); > > Just because they "can". Yes of course, but how is this better than class D extends A, B, C; $d = new D; for the same reasons (i.e.

Re: [PHP-DEV] Re: aggergate vs MI

2002-04-08 Thread brad lafountain
--- "Stig S. Bakken" <[EMAIL PROTECTED]> wrote: > On Mon, 2002-04-08 at 02:50, brad lafountain wrote: > > > > --- "Stig S. Bakken" <[EMAIL PROTECTED]> wrote: > > > On Sun, 2002-04-07 at 20:35, brad lafountain wrote: > > > > > > > > What would be wrong with having the *_SQL_* objects be a membe

Re: [PHP-DEV] Re: aggergate vs MI

2002-04-08 Thread brad lafountain
--- Kristian Köhntopp <[EMAIL PROTECTED]> wrote: > brad lafountain wrote: > > Unless someone could give me a real reason that > > aggerate is better than MI. > > Aggregation does at runtime what MI does at compile time. > Delaying the decision to "do" something is usually an enable for > specif

Re: [PHP-DEV] Re: aggergate vs MI

2002-04-08 Thread Yasuo Ohgaki
Kristian Köhntopp wrote: > brad lafountain wrote: > >>Unless someone could give me a real reason that >>aggerate is better than MI. > > > Aggregation does at runtime what MI does at compile time. > Delaying the decision to "do" something is usually an enable for > specific applications. I ag

Re: [PHP-DEV] Re: aggergate vs MI

2002-04-08 Thread Kristian Köhntopp
"Stig S. Bakken" wrote: > Example set of classes using aggregate to customize at runtime: > > DB_Connection generic connection object > DB_Connection_odbc layer interfacing to PHP's odbc functions > DB_Connection_oracle ditto for Oracle > DB_Connection_mysqlditto for MySQL > DB

Re: [PHP-DEV] Re: aggergate vs MI

2002-04-08 Thread Kristian Köhntopp
brad lafountain wrote: > Unless someone could give me a real reason that > aggerate is better than MI. Aggregation does at runtime what MI does at compile time. Delaying the decision to "do" something is usually an enable for specific applications. Examples are the signal/slot mechanism based

Re: [PHP-DEV] Re: aggergate vs MI

2002-04-08 Thread Stig S. Bakken
On Mon, 2002-04-08 at 02:50, brad lafountain wrote: > > --- "Stig S. Bakken" <[EMAIL PROTECTED]> wrote: > > On Sun, 2002-04-07 at 20:35, brad lafountain wrote: > > > > > > What would be wrong with having the *_SQL_* objects be a member of the > > > *_Connection* classes? > > > > What you're de

Re: [PHP-DEV] Re: aggergate vs MI

2002-04-07 Thread brad lafountain
--- "Stig S. Bakken" <[EMAIL PROTECTED]> wrote: > On Sun, 2002-04-07 at 20:35, brad lafountain wrote: > > > > What would be wrong with having the *_SQL_* objects be a member of the > > *_Connection* classes? > > What you're describing here is object aggregation. What do you mean... Im saying

Re: [PHP-DEV] Re: aggergate vs MI

2002-04-07 Thread Stig S. Bakken
On Sun, 2002-04-07 at 20:35, brad lafountain wrote: > > What would be wrong with having the *_SQL_* objects be a member of the > *_Connection* classes? What you're describing here is object aggregation. - Stig -- PHP Development Mailing List To unsubscribe, visit: htt

Re: [PHP-DEV] Re: aggergate vs MI

2002-04-07 Thread brad lafountain
--- "Stig S. Bakken" <[EMAIL PROTECTED]> wrote: > On Sat, 2002-04-06 at 23:40, brad lafountain wrote: > > > > --- "Stig S. Bakken" <[EMAIL PROTECTED]> wrote: > > > MI is compile-time, aggregate is runtime. That's a big enough reason > > > for me. > > > > I know the difference but how does thi

Re: [PHP-DEV] Re: aggergate vs MI

2002-04-07 Thread Stig S. Bakken
On Sat, 2002-04-06 at 23:40, brad lafountain wrote: > > --- "Stig S. Bakken" <[EMAIL PROTECTED]> wrote: > > MI is compile-time, aggregate is runtime. That's a big enough reason > > for me. > > I know the difference but how does this benifit you? > > > > > > Class definition is defined at des

Re: [PHP-DEV] Re: aggergate vs MI

2002-04-06 Thread brad lafountain
--- "Stig S. Bakken" <[EMAIL PROTECTED]> wrote: > On Sat, 2002-04-06 at 11:21, brad lafountain wrote: > > > > --- Yasuo Ohgaki <[EMAIL PROTECTED]> wrote: > > > Brad Lafountain wrote: > > > > I keep on hearing that "we" are totally against MI but "we" want the > > > aggergate > > > > function. >

Re: [PHP-DEV] Re: aggergate vs MI

2002-04-06 Thread Stig S. Bakken
On Sat, 2002-04-06 at 11:21, brad lafountain wrote: > > --- Yasuo Ohgaki <[EMAIL PROTECTED]> wrote: > > Brad Lafountain wrote: > > > I keep on hearing that "we" are totally against MI but "we" want the > > aggergate > > > function. > > > > > > Can someone PLEASE explain the reasoning behind suc

Re: [PHP-DEV] Re: aggergate vs MI

2002-04-06 Thread brad lafountain
--- Yasuo Ohgaki <[EMAIL PROTECTED]> wrote: > Brad Lafountain wrote: > > I keep on hearing that "we" are totally against MI but "we" want the > aggergate > > function. > > > > Can someone PLEASE explain the reasoning behind such a decision? > > > > I can't think of one example when aggergate

[PHP-DEV] Re: aggergate vs MI

2002-04-05 Thread Yasuo Ohgaki
Brad Lafountain wrote: > I keep on hearing that "we" are totally against MI but "we" want the aggergate > function. > > Can someone PLEASE explain the reasoning behind such a decision? > > I can't think of one example when aggergate would be better than using MI. Aggreation works now. Multipl