#774: deprecate PMC multiple inheritance
--------------------+-------------------------------------------------------
 Reporter:  cotto   |       Owner:       
     Type:  cage    |      Status:  new  
 Priority:  normal  |   Milestone:       
Component:  pmc2c   |     Version:  1.2.0
 Severity:  medium  |    Keywords:       
     Lang:          |       Patch:       
 Platform:          |  
--------------------+-------------------------------------------------------

Comment(by bacek):

 Replying to [comment:1 fperrad]:
 > With Lua, it's doable. It's just a code duplication.
 >
 > But, I think the reason of this deprecation is not enought.
 > For me, a good reason is something like :
 >  multiple inheritance is a performance bottleneck.

 I've got another reason - "multiple inheritance will require to support
 full C++ style virtual/diamond inheritance".

 Consider this:
 {{[

 pmclass Base {
   ATTR foo
 };

 pmclass D1 extends Base {};

 pmclass D2 extends Base {};

 pmclass MyShinyClasss extends D1 extends D2 {

 VTABLE bar { GETATTR(foo); }

 };

 }}}

 (Code is sketched).

 I know how to deal with this. Full implementation of "virtual" inheritance
 will work. But I don't want to implement good half of C++ compiler in
 pmc2c. And I don't want any parrot's developer to learn how to do this.

 --
 Bacek

-- 
Ticket URL: <https://trac.parrot.org/parrot/ticket/774#comment:2>
Parrot <https://trac.parrot.org/parrot/>
Parrot Development
_______________________________________________
parrot-tickets mailing list
[email protected]
http://lists.parrot.org/mailman/listinfo/parrot-tickets

Reply via email to