home *** CD-ROM | disk | FTP | other *** search
- Newsgroups: comp.lang.ada
- Path: sparky!uunet!think.com!linus!linus.mitre.org!linus!mbunix!eachus
- From: eachus@goldfinger.mitre.org (Robert I. Eachus)
- Subject: Re: First-Time C
- In-Reply-To: garyp@rmtc.paramax.com's message of Mon, 11 Jan 1993 21:06:36 GMT
- Message-ID: <EACHUS.93Jan12104230@goldfinger.mitre.org>
- Sender: news@linus.mitre.org (News Service)
- Nntp-Posting-Host: goldfinger.mitre.org
- Organization: The Mitre Corp., Bedford, MA.
- References: <1993Jan11.210636.8396@gvl.unisys.com>
- Date: Tue, 12 Jan 1993 15:42:30 GMT
- Lines: 52
-
- In article <1993Jan11.210636.8396@gvl.unisys.com> garyp@rmtc.paramax.com (Gary Palangian [RMTC/ISP]) writes:
-
- > Our customer is probably going to make a decision to move from
- > Ada to C on my project...
-
- I find this statement very confusing... There are some projects,
- even very large projects, where progamming everything in Ada is
- appropriate. There are other projects, especially small projects,
- where doing everything in C makes sense. But I cannot imagine a
- project where switching from all Ada to all C makes any sort of sense.
- The most time and effort in an Ada project is in the design phase, the
- most time and effort in a C project is usually spent in integration
- and test. Switching from Ada to C would seem to guarentee the worst
- of both worlds. (It would be nice if design in C, code and test in
- Ada was the BEST of both worlds, but I don't think that free lunch
- exists.)
-
- > I would appreciate concise and concrete information for
- > managing large systems development using C, especially from those
- > with an Ada background.
-
- Don't, use Ada instead! (So much for concise and concrete. :-)
-
- If you need to do this for a large system, using Ada as a
- compilable design language has a lot of advantages, but you must both
- restrict the Ada used and maintain the design during the coding
- process. This works well but can cause personnel problems. Everyone
- ends up knowing both Ada and C if they didn't when the project
- started, and from experience unwilling to work on another C project.
- (Try spending a couple of years seeing all the advantages of Ada, but
- none of the disadvantages, and vice-versa for C. It's not fair, but
- that's the way one project I know of that did this ended up. This was
- back in 1984-86, when no compilers supported the chapter 13 features
- needed for a DBMS so it was a "right" decision.)
-
- The best of all possible worlds for your project, however, may be
- to mix Ada and C. Use Ada for the high-level design and structure,
- and whenever appropriate write the (function) bodies in C. This
- allows you to use the strengths of both languages which are in very
- different areas. (You will also find that most of the bugs are in the
- C code. For the most part this will be because the parts where C is
- most appropriate are the trickest routines to get right in any
- case...)
-
- Have fun,
- --
-
- Robert I. Eachus
-
- with Standard_Disclaimer;
- use Standard_Disclaimer;
- function Message (Text: in Clever_Ideas) return Better_Ideas is...
-