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.3 required=5.0 tests=BAYES_00,INVALID_MSGID autolearn=no autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 109fba,df854b5838c3e14 X-Google-Attributes: gid109fba,public X-Google-Thread: 103376,df854b5838c3e14 X-Google-Attributes: gid103376,public X-Google-Thread: 1014db,df854b5838c3e14 X-Google-Attributes: gid1014db,public X-Google-Thread: 10db24,fec75f150a0d78f5 X-Google-Attributes: gid10db24,public From: dewar@cs.nyu.edu (Robert Dewar) Subject: Re: C/C++ knocks the crap out of Ada Date: 1996/03/26 Message-ID: #1/1 X-Deja-AN: 144337516 references: <4ikbar$g0k@tpd.dsccc.com> <4iupk7$5t4@tpd.dsccc.com> organization: Courant Institute of Mathematical Sciences newsgroups: comp.lang.ada,comp.lang.c,comp.lang.c++,comp.edu Date: 1996-03-26T00:00:00+00:00 List-Id: "A Thompson guy could better answer this. I would be surprised if Gnat and ObjectAda didn't compile things with little or no modification. Heck, I've taken large chuncks of VAX Ada and moved them to Gnat with no changes. Of course, these did not have any OS specific stuff in them." That should be true providing you stick to the subset of the language in terms of annexes that ObjectAda implements. GNAT is the only Ada 95 compiler so far that implements all the annexes, so if you take advantage of this, your code will not be easily portable to other compilers not supprting these annexes. Moving large chunks of VAX Ada is not a test, since that is Ada 83 code. The question was whether GNAT code can be moved to ObjectAda. Note also that GNAT implements a number of implementatoin dependent pragmas and attributes. If you are using any of these, you will have to check whether the other compiler does too. FOr example, if you are using the pragmas to provide interoperability between C++ classes and Ada tagged types, you may have a hard time moving your code. Not only may the pragmas not exist, but there simply may be no such interoperability, since it is not rquired by the standard. As always, if you want to write highly portable code, stay away from implementation dependent features, and make sure the compilers support the same feature sets. Of course porting code from one GNAT implementation to another is much less of a problem, and since GNAT is available on many platforms, with more being added all the time, this form of portability will be enough for many users of Ada 95 :-) Robert Dewar Ada Core Technologies