From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00 autolearn=ham autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 103376,6e16e39504a85f4e X-Google-Attributes: gid103376,public X-Google-ArrivalTime: 1995-02-25 20:09:50 PST Path: nntp.gmd.de!news.rwth-aachen.de!news.rhrz.uni-bonn.de!news.uni-stuttgart.de!rz.uni-karlsruhe.de!xlink.net!howland.reston.ans.net!gatech!newsxfer.itd.umich.edu!zip.eecs.umich.edu!panix!cmcl2!thecourier.cims.nyu.edu!thecourier.cims.nyu.edu!nobody From: comar@cs.nyu.edu (Cyrille Comar) Newsgroups: comp.lang.ada Subject: Re: Borland Ada Date: 25 Feb 1995 19:13:39 -0500 Organization: Courant Institute of Mathematical Sciences Distribution: world Message-ID: <3ioh3j$mn@lang8.cs.nyu.edu> References: <3icuq6$1j3c@watnews1.watson.ibm.com> NNTP-Posting-Host: lang8.cs.nyu.edu Date: 1995-02-25T19:13:39-05:00 List-Id: ncohen@watson.ibm.com (Norman H. Cohen) writes: : The context here (a putative Borland Ada) is imaginary, but it's : important to point out that the absence of multiple inheritance in Ada : does not preclude importing objects defined by multiple inheritance. : Tom Quiggle demonstrated this quite impressively by importing classes : from a C++ class library using GNAT. Although Tom didn't import any object coming from a Class with multiple inheritance in its Tri-Ada Demo (I guess that is hat you are refering to), it is true that we addressed this possibility in our design for interfacing GNAT and C++. By the way the problem is not importing objects but rather being able to dispatch to primitives from the different ancestors: This is possible with our interface but not completely trivial, you better know what you are doing (this is definitely a low-level interface) : Multiple inheritance and single inheritance are different ways of : DEFINING a class. Once the class is defined, an object of that class is : like an object of any other class: It has a unique tag; zero or more data ^^^^^^^^^^^^^^^^^ This is unfortunately not true, an objects coming from a class that multiple-inherits, contains more than one virtual table pointer (the equivalent of a tag), this is what makes the interfacing not completely trivial... By the way, I agree with the essence of your post, it is possible to inherit from a C++ class even if it uses multipe inheritance... -- ------------------------------------------------------------------------ Cyrille Comar, E-mail: comar@cs.nyu.edu Gnat Project US phone: (212) 998-3489 -- ------------------------------------------------------------------------ Cyrille Comar, E-mail: comar@cs.nyu.edu Gnat Project US phone: (212) 998-3489