Re: [PDD15 PROPOSAL] Pluggable MRO

2007-03-10 Thread Jonathan Worthington
Larry Wall wrote: On Sat, Mar 10, 2007 at 04:51:28PM +, Jonathan Worthington wrote: : More interesting is that, for Perl 6, : we also need to override the MRO on a by-method-call basis - you can : change the dispatch order at the call site! I wouldn't worry about that at all. I imagine s

Re: [PDD15 PROPOSAL] Pluggable MRO

2007-03-10 Thread Larry Wall
On Sat, Mar 10, 2007 at 06:09:40PM +, Jonathan Worthington wrote: : It's a confusing problem, for sure. I've thought about it, but as of yet : have no good answers. I don't think forbidding having classes with : different MROs in a single hierarchy is the answer, because that loses a : lot o

Re: [PDD15 PROPOSAL] Pluggable MRO

2007-03-10 Thread Larry Wall
On Sat, Mar 10, 2007 at 04:51:28PM +, Jonathan Worthington wrote: : More interesting is that, for Perl 6, : we also need to override the MRO on a by-method-call basis - you can : change the dispatch order at the call site! I wouldn't worry about that at all. I imagine such a construct would

Re: [PDD15 PROPOSAL] Pluggable MRO

2007-03-10 Thread Jonathan Worthington
Nicholas Clark wrote: On Sat, Mar 10, 2007 at 04:51:28PM +, Jonathan Worthington wrote: Different languages may have a different MRO. Python since 2.3 and Perl 6 by default use C3. Perl 5 used something else. Therefore, we need uses Hope that thi

Re: [PDD15 PROPOSAL] Pluggable MRO

2007-03-10 Thread Nicholas Clark
On Sat, Mar 10, 2007 at 04:51:28PM +, Jonathan Worthington wrote: > Different languages may have a different MRO. Python since 2.3 and Perl > 6 by default use C3. Perl 5 used something else. Therefore, we need uses > Hope that this makes some kinda sense - feed

[PDD15 PROPOSAL] Pluggable MRO

2007-03-10 Thread Jonathan Worthington
Hi, One of the things we need to specify in PDD 15 is method resolution order. -- BACKGROUND The MRO, short for Method Resolution Order, is the order in which we search classes in an inheritance hierarchy when looking for attributes or methods to call. The MRO is represented as a linearization