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=0.7 required=5.0 tests=BAYES_00,INVALID_DATE, REPLYTO_WITHOUT_TO_CC autolearn=no autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 103376,b19fa62fdce575f9 X-Google-Attributes: gid103376,public X-Google-ArrivalTime: 1994-11-20 15:32:31 PST Path: nntp.gmd.de!xlink.net!news.fhg.de!berlin.fhg.de!isst.fhg.de!hahn.informatik.hu-berlin.de!zib-berlin.de!prise.nz.dlr.de!news.dfn.de!swiss.ans.net!cmcl2!thecourier.cims.nyu.edu!thecourier.cims.nyu.edu!comar From: comar@lang8.cs.nyu.edu (Cyrille Comar) Newsgroups: comp.lang.ada Subject: Re: Why don't large companies use Ada? Date: 20 Nov 1994 23:32:31 GMT Organization: Courant Institute of Mathematical Sciences Message-ID: References: <3a6oc5$dkh@nntp1.u.washington.edu> <3aj9a3$4am@s-cwis.unomaha.edu> <3ao0jj$jhg@gnat.cs.nyu.edu> Reply-To: comar@cs.nyu.edu NNTP-Posting-Host: lang8.cs.nyu.edu In-reply-to: dewar@cs.nyu.edu's message of 20 Nov 1994 12:21:55 -0500 Date: 1994-11-20T23:32:31+00:00 List-Id: >>>>> "Robert" == Robert Dewar writes: In article <3ao0jj$jhg@gnat.cs.nyu.edu> dewar@cs.nyu.edu (Robert Dewar) writes: Robert> Note also that Bill made his decision to rewrite in Ada 9X long Robert> before we completed or even designed the GNAT C++ interface. It is Robert> not possible to duplicate this interface manually, because among Robert> other things, it depends on GNAT using exactly the same dispatch Robert> table structure as C++, which is something we have only recently Robert> achieved. Robert, Let me give some more technical details on this subject, GNAT doesn't use the same dispatch table format than c++ for all tagged types but only for tagged types matching c++ classes or deriving from them. It doesn't matter to use a completely different format for unrelated tagged types and this is what GNAT does by default. This is not possible to adopt the c++ dispatch table format unconditionnally for many reasons, the main one being that there not ONE format but one for each different c++ compiler. There is one case where it is useful to adopt the c++ Dispatch Table format for regular tagged types, this is when you want to derive a c++ class from an Ada tagged type: this is possible and easy to change GNAT in order to match the format of a particular c++ compiler, it is not even necessary to change the compiler itself but only one file in the run-time thank's to the Dispatch Table abstraction that is defined in the private part of Ada.Tags -- ------------------------------------------------------------------------ Cyrille Comar, E-mail: comar@cs.nyu.edu Gnat Project US phone: (212) 998-3489