digitalmars.D - VTable/open resusable object model
- BLS (10/10) Jul 17 2007 An Object model that can be customised
- Robert Fraser (3/6) Jul 17 2007 Really working on those complete sentences there?
An Object model that can be customised to support powerful features such as multiple inheritance and mixed-mode execution (native code/ byte code) I also guess that it may help to implement dynamic class loading; The new D object model ? Bjoern You will find a 144 LOC ! C implementation at the end of this document: http://www.piumarta.com/pepsi/objmodel.pdf and an implementation in Python at : http://denkspuren.blogspot.com/2007_03_01_archive.html
Jul 17 2007
BLS Wrote:An Object model that can be customized to support powerful features such as multiple inheritance and mixed-mode execution (native code/ byte code).Really working on those complete sentences there? But, sure, it's not a bad idea (though, IMO, multiple inheritance _is_). But it seems like it'd be a lot of work at this stage for Walter, and I certainly don't think it should become part of the spec.
Jul 17 2007
Robert Fraser schrieb:BLS Wrote:Yes, A smalltalk derivat is allready implemented based on this object model, which is, compared to Cpp, approximate /only/ 20 percent slower.An Object model that can be customized to support powerful features such as multiple inheritance and mixed-mode execution (native code/ byte code).Really working on those complete sentences there?But, sure, it's not a bad idea (though, IMO, multiple inheritance_is_). But it seems like it'd be a lot of work at this stage for Walter, and I certainly don't think it should become part of the spec. Instead of multiple inheritance implementing *traits* is also possible : quote : Traits are a powerful software composition mechanism. A trait is a collection of methods without state that can be manipulated and combined with other traits according to an algebra of composition, aliasing and exclusion. They are interesting because they provide the power of multiple inheritance without the drawbacks and complexity of multi inheritance .... end quote Bjoern
Jul 18 2007
BLS schrieb:Robert Fraser schrieb: > BLS Wrote: > >> An Object model that can be customized >> to support powerful features such as multiple inheritance and >> mixed-mode execution (native code/ byte code). > > Really working on those complete sentences there? Yes, A smalltalk derivat is allready implemented based on this object model, which is, compared to Cpp, approximate /only/ 20 percent slower. > > But, sure, it's not a bad idea (though, IMO, multiple inheritance _is_). But it seems like it'd be a lot of work at this stage for Walter, and I certainly don't think it should become part of the spec. Instead of multiple inheritance implementing *traits* is also possible : quote : Traits are a powerful software composition mechanism. A trait is a collection of methods without state that can be manipulated and combined with other traits according to an algebra of composition, aliasing and exclusion. They are interesting because they provide the power of multiple inheritance without the drawbacks and complexity of multi inheritance .... end quote BjoernFor a better understanding have a look at http://vpri.org/pdf/colas_wp_RN-2006-001-a.pdf See graphic at page 5 and than page 23 More at : http://vpri.org/html/writings.htm Chapter *Fundamental New Computer Technologies* Okay that is more than enough <g>
Jul 18 2007