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.9 required=5.0 tests=BAYES_00 autolearn=ham autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 103376,2def9aa85afa5d22 X-Google-Attributes: gid103376,public X-Google-ArrivalTime: 2001-11-06 13:52:35 PST Newsgroups: comp.lang.ada Path: archiver1.google.com!news1.google.com!sn-xit-02!supernews.com!newsfeed.direct.ca!look.ca!cpk-news-hub1.bbnplanet.com!nycmny1-snh1.gtei.net!news.gtei.net!newsfeed.mathworks.com!news.mathworks.com!uunet!nyc.uu.net!ash.uu.net!xyzzy!nntp From: Rex Reges Subject: Re: Joint Strike Fighter X-Nntp-Posting-Host: e919331.sea.boeing.com Content-Type: text/plain; charset=us-ascii Message-ID: <3BE853FD.513040F@reges.org> Sender: nntp@news.boeing.com (Boeing NNTP News Access) Content-Transfer-Encoding: 7bit Organization: The Boeing Company X-Accept-Language: en References: <3BDCE159.39F6D422@adaworks.com> <11bf7180.0110290311.4d8d6f04@posting.google.com> <3BDF9C6A.C25520C5@adaworks.com> <3BE023AB.8F235EF5@sparc01.ftw.rsc.raytheon.com> <9rp8mo$6d8$1@nh.pace.co.uk> <9rrmvl$98d$1@nh.pace.co.uk> <3BE4221B.34589071@adaworks.com> <3BE43CDC.F6B1EE30@acm.org> <3BE813E4.C4797DDE@reges.org> Mime-Version: 1.0 Date: Tue, 6 Nov 2001 21:19:57 GMT X-Mailer: Mozilla 4.5 [en]C-CCK-MCD Boeing Kit (Win95; U) Xref: archiver1.google.com comp.lang.ada:15950 Date: 2001-11-06T21:19:57+00:00 List-Id: Larry Kilgallen wrote: > > In article <3BE813E4.C4797DDE@reges.org>, Rex Reges writes: > > > I doubt that one could get several hundred Ada programmers > > in a pinch. I couldn't hire six experienced Ada > > contractors in six months! And try to get them to move > > to some tornado infested place like Oklahoma City (who knows > > what Fort Worth holds). Of course we could train C++ > > programmers. So we pay $75/hour for their time and send them > > to training too! > > Is that the same price at which you could not hire Ada folk ? > > (For purposes of this discussion the exact amount does not matter, > just the relationship.) Once you realize the best approach to cost-plus contracts is to honestly work as ineptly as possible, then you would hire the cheapest folks you can find that the Government will accept. So it appears I was wrong, the optimal solution is to hire C/C++ programmers and make them code in Ada with no training at all. Upon this conclusion, I can now make sense of the Ada coding practices I've seen: - Calling memmov instead of using unchecked_conversion. - Using 'Address to overlay variables (on the stack!). - Assigning all of the components of a record one at a time instead of using an aggregate assignment. - Using a preprocessor to add 15 variatons of the code (with overlapping conditions). - Making every subprogram a function. ... The hope is that Ada can still provide safety when coded in a C-like fasion. However, invariably, some wiz says that the run-time checks in Ada are too time consuming and they turn them off; exceptions and exception handlers are banned and type checking is assigned the role of matching engineering units (feet versus meters). Even trained Ada programmers have a hard time mapping Object Oriented concepts to Ada since all of the OO classes are taught in C++ (or no language as Rational prefers it). So you see aggregation being accomplished via child packages. How reusable is a component that is the 6th child of the 12th generation of the system object? And instead of using variant records it is easier to create a single class that every message in the system is derived from; imagine how many thousands of variations are required for variable length messages. But it easy to guess what the input or output of any component is, it is a "message.object" (to be defined at run-time). How are design patterns automatically applied to Ada objects? Maybe Ada was/is too much too soon, the world is not quite ready yet? Rex Reges