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: 103376,81cf52699486abe7 X-Google-Attributes: gid103376,public From: Gautier Subject: Re: Ada95 Strengths/Weaknesses. Date: 1999/09/28 Message-ID: <37F0E771.7E394DE4@maths.unine.ch>#1/1 X-Deja-AN: 530339778 Content-Transfer-Encoding: 7bit References: <37EED7B8.245C0054@yukyonline.co.yuky> <7smp30$9aa1@news.cis.okstate.edu> <7sp8m9$a6e$1@nnrp1.deja.com> <7spauv$a2g2@news.cis.okstate.edu> Content-Type: text/plain; charset=us-ascii MIME-Version: 1.0 Newsgroups: comp.lang.ada Date: 1999-09-28T00:00:00+00:00 List-Id: > (...) over twice the size of the original. > So, since GNAT is junk, do you have another Ada compiler to recommend? GNAT is not junk, since the relation between source code & .exe size is never linear (in any language)! I reproduce a reply to a similar question: << The .exe size will be (roughly said...) AX+B, where X is the amount of instructions of _your_ program. AX is the object compiled code size. Dr Dewar just told that since the A does not depend on the front end (Ada, C, Pascal, Modula...) in the GCC system, AX will be the same in the different languages - provided that your source codes is the tightly equivalent! The B is the default library code that comes at linking and that one is bigger in Ada (richer conversions, exception handling, tasking, elaboration, ...?), so your .exe can be bigger. But B is a ``fixed cost''. >> In addition, a nice feature of GNAT is to allow cross-unit inlining (using the standard Ada features, modularity+inline pragma), so you can (but aren't obliged to) obtain object code that is bigger (bigger A) but also faster than with old languages where source codes don't know of each other... -- Gautier -------- http://members.xoom.com/gdemont/