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,9c86eb13dd395066 X-Google-Attributes: gid103376,public From: dewar@merv.cs.nyu.edu (Robert Dewar) Subject: Re: CRC in Ada? Date: 1997/03/13 Message-ID: #1/1 X-Deja-AN: 225422708 References: <5g98ai$gqi@news2.delphi.com> Organization: New York University Newsgroups: comp.lang.ada Date: 1997-03-13T00:00:00+00:00 List-Id: tmoran said << Multi-language projects are more work to maintain. C (or special OS calls) are less portable. It's hard to argue strongly for Ada while also saying "except for the parts Ada can't do well" (even if that really means except for the parts this particular Ada compiler doesn't do well). And consider the start of this discussion: someone translated a small program from C to Ada and found it ten times slower. I don't know what happened in that particular case, but often that sort of thing results not in investigation of how to get around the weak points of the Ada compiler/library, but rather in non-use of Ada because "Ada is ten times slower".>> First, it simply is not the case that using some interfaced C functions makes projects harder to maintain. That seems pure FUD to me. Almost every big Ada program I have worked on has odd bits of interfaced stuff around (after all the reason we worked so hard on improving the functionality and portability of language interfacing features in Ada 95 was precisely that this is a perfectly reasonable way to structure programs. At some level nearly any big program will be multi-language since at some level it will use bindings that interface to foreign languages and systems. As for the 10x faster, it is also easy to find examples where a small Ada program recoded in C in a casual manner runs 10 times slower in C. Anyone who makes language decisions based on uncritical analysis of isolated data points of this kind without investigating the source of the difference is either incompetent, or looking for an excuse to make a decision that they wanted to make for other reasons anyway.