mfeldman@seas.gwu.edu (Michael Feldman) (12/14/90)
I recently received a copy of the section of the Defense Appropriation Conference Report regarding Ada, and thought you might be interested in reading what Congress has to say. For you outside-the-Beltway folks, a conference report is the congressional document that reconciles any differences between House-passed and Senate-passed bills. Both houses vote on the conference report, and basically that's how the law is passed. In this case, congress passed this DoD appropriation bill at the end of October, and Bush signed it. Here is the relevant paragraph: "Sec. 8092. Notwithstanding any other provision of law, after June 1, 1991, where cost-effective, all Department of Defense software shall be written in the programming language Ada, in the absence of a special exemption by an official designated by the Secretary of Defense." In plain English: no gobbledegook about "embedded systems" or "mission- critical systems." The criterion is cost-effectiveness. Might be fun to chat on the net about how big a loophole "cost-effectiveness" is, or how it might be determined. As background, here is a lengthy paragraph from the explanatory language that came along with the conference report. "Ada Programming Language - The Department of Defense developed Ada to reduce the cost of development and support of software systems written in the hundreds of languages used by the DoD through the early 1980's. Beside the training economies of scale arising from a common language, Ada enables software cost reduction in several other ways: (1) its constructs have been chosen to be building blocks for disciplined software engineering; (2) its internal checking inhibits errors in large systems lying beyond the feasibility of manual checking; and (3) its separation of software module interfaces from their implementations facilitates and encourages reuse of already-built and tested program parts. While each of these advantages is important, Ada's encouragement of software engineering is fundamental. Software practitioners increasingly believe the application of engineering disciplines is the only currently-feasible avenue toward controlling unbridled software cost escalation in ever-larger and more complex systems. In march, 1987, the Deputy Secretary of Defense mandated use of Ada in DoD weapons systems and strongly recommended it for other DoD applications. This mandate has stimulated the development of commercially- available Ada compilers and support tools that are fully responsive to almost all DoD requirements. However, there are still too many other languages being used in the DoD, and thus the cost benefits of Ada are being substantially delayed. Therefore, the Committee [congressional conference committee - MBF] has included a new general provision, Section 8084 [changed later to 8092 - MBF] that enforces the DoD policy to make Ada mandatory. It will remove any doubt of full DoD transition to Ada, particularly in other than weapons systems applications. It will stimulate DoD to move forward quickly with Ada-based software engineering education and cataloguing/reuse systems. In addition, U.S. [government] and commercial users have already expanded tremendously the use of Ada and Ada-related technology. The DoD, by extending its Ada mandate, can leverage off these commercial advantages. Navy Ada is considered to be the same as Ada for the purposes of this legislation [HUH? What's Navy Ada? Anyone know?], and the term Ada is otherwise defined by ANSI/MIL-STD-1815. The Committee envisions that the Office of the Secretary of Defense will administer the general provision in a manner that prevents disruption to weapon systems that are well into development. The Committee directs that applications using or currently planning to use the Enhanced Modular Signal Processor (EMSP) be exempted from mandatory use of Ada as a matter of policy." This is what is known as "legislative history." It is not formally part of the law but gives insight into the mindset of the lawmakers (or their staff people, really). Have fun with it. Mike Feldman
sampson@cod.NOSC.MIL (Charles H. Sampson) (12/14/90)
In article <2449@sparko.gwu.edu> mfeldman@seas.gwu.edu (Michael Feldman) quotes the U. S. Congress: > >"Sec. 8092. Notwithstanding any other provision of law, after June 1, 1991, > where cost-effective, all Department of Defense software shall be written > in the programming language Ada, in the absence of a special exemption > by an official designated by the Secretary of Defense." From the English language viewpoint, this statement has too many modi- fiers. At least it does if you assume that they are trying to force the use of Ada with few exception. As written, two valid interpretations ap- pear to be: (1) If it's not cost-effective, no special exemption is needed to avoid Ada, and (2) Even if it's cost-effective, Ada can be avoided by obtaining a special exemption. I think they meant to say that all DoD software must be written in Ada unless it is not cost-effective; if it is claimed to not be cost-effective, that claim must be confirmed by a special exemption from SecDef. To borrow Norm Cohen's question from another context, who writes these things? (Probable answer here: people who love run-on sentences.) Charlie
g_harrison@vger.nsu.edu (12/14/90)
In article <2449@sparko.gwu.edu>, mfeldman@seas.gwu.edu (Michael Feldman) writes: [some of Mike's stuff deleted] > In this case, congress passed this DoD appropriation bill at the end > of October, and Bush signed it. Here is the relevant paragraph: > > As background, here is a lengthy paragraph from the explanatory language > that came along with the conference report. > > "Ada Programming Language - The Department of Defense developed Ada to ...... loop put("bla blah"); end loop; This seems to be pure psyco-babble. It sounds like a memo from a Dean (My dean doesn't read this [I PRAY]!). The statement sould say "Use it [Ada] or loose it [Contract]." "Cost Effective" is a wonderful generalization to mean almost anything including "My FORTRAN programmers will claim permanent disability and expect workman's comp." or "Ada is TOO BIG for my machine. [read "Ada is too complex for my programmers."]. If I get flamed, then so be it! I just feel that realizing that one [relatively] portable language with some nice features that conform to some good software engineering practices is worthy of a mandate with appropriate considerations to current hardware and requirements constraints. Any good programmer can learn to use Ada in the way it was designed. > > This is what is known as "legislative history." It is not formally > part of the law but gives insight into the mindset of the lawmakers > (or their staff people, really). Have fun with it. > > Mike Feldman I did have fun with it, Mike. Thanks. ------------------------------------------------------*------o Happy--- -- George C. Harrison ------------------------------ * * ----o_o___ New--- ----- Professor of Computer Science -------------- * * * ----\ o /-Year-- ----- Norfolk State University, ----------------- *Merry* ----\ /-------- -------- Norfolk, Virginia 23504 --------------- * * * * * ----|--------- ----- INTERNET: g_harrison@vger.nsu.edu ------ *Christmas* --_|_-------- ----------These are MY views.... you may share them..*** -----------------
mfeldman@seas.gwu.edu (Michael Feldman) (12/14/90)
In article <2577@cod.NOSC.MIL> sampson@cod.nosc.mil.UUCP (Charles H. Sampson) writes: > > I think they meant to say that all DoD software must be written in Ada >unless it is not cost-effective; if it is claimed to not be cost-effective, >that claim must be confirmed by a special exemption from SecDef. That sounds like a reasonable interpretation to me. > To borrow Norm Cohen's question from another context, who writes these >things? (Probable answer here: people who love run-on sentences.) Well, it probably was a Capitol Hill staff person, or else it was fed to such a person by someone in the Ada community. The explanatory paragraph looks like it came from the pen (word-processor?) of one of our Ada evangelists; it seems to be too literate about Ada to have been written by a run-of-the-mill Hill staffer. Reminds me of the 1987 (I think) AdaExpo in West Virginia, where the keynote speaker was Senator Robert Byrd. Some turkey wrote a speech for him that put all kinds of technical jargon in his mouth. It was both very funny and very sad to hear poor ol' Byrd trying to be smooth and articulate about generics, tasking, and operator overloading. As it happens, I know a bit about how this stuff gets written because my wife does exactly this kind of legislative drafting for the Dept. of Education (no flames please - she doesn't make policy). She is a very fussy and careful writer, and is always aghast at the rotten quality of much of the writing she sees around town. Especially disconcerting is the poor use of English in our laws. How can we (dis)obey what we can't understand? Thank you for not chopping off the head of the messenger because the message was poorly written :-) Mike Feldman
bwb@sei.cmu.edu (Bruce Benson) (12/15/90)
In article <2449@sparko.gwu.edu> mfeldman@seas.gwu.edu (Michael Feldman) writes >"Sec. 8092. Notwithstanding any other provision of law, after June 1, 1991, > where cost-effective, all Department of Defense software shall be written > in the programming language Ada, in the absence of a special exemption > by an official designated by the Secretary of Defense." "shall be written" - does this mean new software or does it mean we have to convert the hundreds of millions of lines of Cobol to Ada? We may be able to do it blindly with a Cobol to Ada translationr and it would probably be fairly cheap (as things go) to do so. I can see the metric the bean counters are going to use to check compliance: Total KLOC - Ada KLOC --------------------- Total KLOC If the percentage doesn't approach 100 fast enough then they will mandate mindless translations. >"Ada Programming Language - The Department of Defense developed Ada to >reduce the cost of development and support of software systems written in >the hundreds of languages used by the DoD through the early 1980's. >Beside the training economies of scale arising from a common language, >Ada enables software cost reduction in several other ways: (1) its >constructs have been chosen to be building blocks for disciplined >software engineering; (2) its internal checking inhibits errors in >large systems lying beyond the feasibility of manual checking; and >(3) its separation of software module interfaces from their >implementations facilitates and encourages reuse of already-built >and tested program parts. While each of these advantages is important, >Ada's encouragement of software engineering is fundamental. Software <on and on on the benefits of Ada> If I've learned nothing else while working at the SEI, it's that most software engineering claims are purely back-of-the-envelope no-connection-to-reality sheer speculation, or in other words: never been validated on the scale being discussed. If the government would simply recognize that their programs are just national experiments, and conducted them as such, then we could gain some benefits out of all the mandated "good ideas" by using government as one big test bed. This way we could justify the high cost of government by reminding everyone that inefficiency and failure are valid and acceptable results when testing an hypothesis. * Bruce Benson + Internet - bwb@sei.cmu.edu + + * Software Engineering Institute + Compuserv - 76226,3407 + >--|> * Carnegie Mellon University + Voice - 412 268 8469 + + * Pittsburgh PA 15213-3890 + + US Air Force
bwb@sei.cmu.edu (Bruce Benson) (12/15/90)
In article <9700@as0c.sei.cmu.edu> bwb@sei.cmu.edu (Bruce Benson) writes: >probably be fairly cheap (as things go) to do so. I can see the metric >the bean counters are going to use to check compliance: > > Total KLOC - Ada KLOC > --------------------- > Total KLOC > >If the percentage doesn't approach 100 fast enough then they will mandate >mindless translations. Sheesh, you can tell I'm in government. How about if it doesn't approach zero fast enough (Crosby always wanted metrics to trend to zero...). * Bruce Benson + Internet - bwb@sei.cmu.edu + + * Software Engineering Institute + Compuserv - 76226,3407 + >--|> * Carnegie Mellon University + Voice - 412 268 8469 + + * Pittsburgh PA 15213-3890 + + US Air Force
mneerach@iiic.ethz.ch (Matthias Ulrich Neeracher) (12/15/90)
In article <2449@sparko.gwu.edu>, mfeldman@seas.gwu.edu (Michael Feldman) writes: > "Sec. 8092. Notwithstanding any other provision of law, after June 1, 1991, > where cost-effective, all Department of Defense software shall be written ^^^^^^^^^^^^^^^^^^^^ > in the programming language Ada, in the absence of a special exemption > by an official designated by the Secretary of Defense." To me, this looks like a rather radical attempt to prohibit further use of Ada :-). But then again, has there *ever* been something cost-effective produced for the Department of Defense ? Matthias ----- Matthias Neeracher mneerach@iiic.ethz.ch "These days, though, you have to be pretty technical before you can even aspire to crudeness." -- William Gibson, _Johnny Mnemonic_
mfeldman@seas.gwu.edu (Michael Feldman) (12/16/90)
In article <9700@as0c.sei.cmu.edu> bwb@sei.cmu.edu (Bruce Benson) writes: > >"shall be written" - does this mean new software or does it mean we have >to convert the hundreds of millions of lines of Cobol to Ada? We may be Well, I've been reading Ada stuff for about 10 years, and never saw even a hint that old systems were to be converted to Ada just for the hell of it. > >If the percentage doesn't approach 100 fast enough then they will mandate >mindless translations. Oh, Lord - I hope not! Seriously, I don't have a lot of inside information, but I really don't think this is what it's about. Do you have any serious info suggesting this mindlessness? (I realize that we're all cynics in this business, but fact and cynicism shouldn't be confused. Got facts?) > Mike Feldman
mfeldman@seas.gwu.edu (Michael Feldman) (12/16/90)
In article <378.276807d8@vger.nsu.edu# g_harrison@vger.nsu.edu writes:
##
## "Ada Programming Language - The Department of Defense developed Ada to
#...... loop put("bla blah"); end loop;
#
#This seems to be pure psyco-babble. It sounds like a memo from a Dean (My dean
#doesn't read this [I PRAY]!). The statement sould say "Use it [Ada] or loose
#it [Contract]."
Actually it sounds like the words of a few Ada evangelists I have known :-)
As much as I like Ada, I get put off by this kind of blather as much as you
do. I thought the missionaries had packed up and gone home, but I guess not...
#
#"Cost Effective" is a wonderful generalization to mean almost anything
#including "My FORTRAN programmers will claim permanent disability and expect
#workman's comp." or "Ada is TOO BIG for my machine. [read "Ada is too complex
#for my programmers."]. If I get flamed, then so be it! I just feel that
No flames from here. I'm sure we'll all have fun reading tea-leaves about
what Congress thought it meant by "where cost effective." That's why I
posted it. I'm glad it stirred the kettle up. That was the idea.
#
#Any good programmer can learn to use Ada in the way it was designed.
Yup. Couldn't agree more.
#
## This is what is known as "legislative history." It is not formally
## part of the law but gives insight into the mindset of the lawmakers
## (or their staff people, really). Have fun with it.
#
#I did have fun with it, Mike. Thanks.
#
Pleasure's mine. Glad to have brightened your day.
Mike Feldman
progers@ajpo.sei.cmu.edu (Pat Rogers) (12/16/90)
In article <18173@neptune.inf.ethz.ch>, mneerach@iiic.ethz.ch (Matthias Ulrich Neeracher) writes: > In article <2449@sparko.gwu.edu>, mfeldman@seas.gwu.edu (Michael > Feldman) writes: > > "Sec. 8092. Notwithstanding any other provision of law, after June 1, 1991, > > where cost-effective, all Department of Defense software shall be written > ^^^^^^^^^^^^^^^^^^^^ > > in the programming language Ada, in the absence of a special exemption > > by an official designated by the Secretary of Defense." > > To me, this looks like a rather radical attempt to prohibit further use > of Ada :-). But then again, has there *ever* been something cost-effective > produced for the Department of Defense ? > Quite a bit, I would think. COBOL is not my favorite language, but it would be difficult not to consider it quite an advance for the times, and cost- effective over its lifetime. With respect to Ada, I have seen a presentation by a fellow consultant to the effect that, once familiar with the language, a very considerable increase in productivity is typical/possible. (So it is not just a maintenance issue.) The distinguishing thing about the presentation is that he claims to have the data to prove it -- a database of many (>100) projects. My personal experience with the language (10 years) agrees with his assertion. Pat Rogers Software Arts & Sciences progers@ajpo.sei.cmu.edu
bwb@sei.cmu.edu (Bruce Benson) (12/18/90)
In article <2455@sparko.gwu.edu> mfeldman@seas.gwu.edu () writes: >In article <9700@as0c.sei.cmu.edu> bwb@sei.cmu.edu (Bruce Benson) writes: >>If the percentage doesn't approach 100 fast enough then they will mandate >>mindless translations. >Oh, Lord - I hope not! Seriously, I don't have a lot of inside information, >but I really don't think this is what it's about. Do you have any serious >info suggesting this mindlessness? (I realize that we're all cynics in this >business, but fact and cynicism shouldn't be confused. Got facts?) Nope, just fears. I sat in a meeting where an individual (working in one of the military service DoD secretariets) insisted that any university that got federal money (ROTC, research grants, etc.) should be told to teach Ada or have their money taken away. Luckily, no one took him too seriously, but his position was such that many people have to take him seriously (and he advises other more senior people on technical issues, such as Ada). I figure he was just testing out the idea by presenting it to the group. The fact that he would seriously press the idea suggested to me that he was more focused on "getting people to use Ada" as an end unto itself rather than improving software engineering practices. * Bruce Benson + Internet - bwb@sei.cmu.edu + + * Software Engineering Institute + Compuserv - 76226,3407 + >--|> * Carnegie Mellon University + Voice - 412 268 8469 + + * Pittsburgh PA 15213-3890 + + US Air Force
emery@linus.mitre.org (David Emery) (12/18/90)
>From: bwb@sei.cmu.edu (Bruce Benson) >I sat in a meeting where an individual (working in one of the military >service DoD secretariets) insisted that any university that got >federal money (ROTC, research grants, etc.) should be told to teach >Ada or have their money taken away. Actually, I think there's something to be said for this idea. Even more, I think that any DARPA or DoD-funded project should submit a waiver request to do their work in something besides Ada. Such waivers should be reasonably easy to get, but there are a lot of research projects that could be used on gov't systems, except for the fact that they're implemented in languages that create a significant maintenance/adaptability problem (e.g. C, lisp). However, unless and until Ada compilers are as affordable as C compilers (e.g. Gnu C), such a requirement will be financially untenable, since most schools are unwilling to fork out the $$ for an Ada compiler. dave
sampson@cod.NOSC.MIL (Charles H. Sampson) (12/18/90)
In article <2455@sparko.gwu.edu> mfeldman@seas.gwu.edu () writes: >In article <9700@as0c.sei.cmu.edu> bwb@sei.cmu.edu (Bruce Benson) writes: >> >>If the percentage doesn't approach 100 fast enough then they will mandate >>mindless translations. >Oh, Lord - I hope not! Seriously, I don't have a lot of inside information, >but I really don't think this is what it's about. Do you have any serious >info suggesting this mindlessness? (I realize that we're all cynics in this >business, but fact and cynicism shouldn't be confused. Got facts?) I haven't seen any mandate yet, at any level, but expressions of inter- est in mechanical (read mindless) translation from various languages to Ada keep cropping up in the part of the Navy that I work with. Usually some software house is trying to sell the Navy on the benefits of transitioning to Ada and the wonderful tool they have to aid that transition. I've had to critique a few of these efforts. The translated Ada was appalling, even when the proponents were claiming that the program should be maintained (for decades) in Ada rather than its original, natural, language. These efforts always seem to be presented as quck-and-dirty proofs-of-concept, with pro- mises that the final product will be truly wonderful, as soon as a lot of our tax money is spent. Charlie
mfeldman@seas.gwu.edu (Michael Feldman) (12/18/90)
In article <9728@as0c.sei.cmu.edu> bwb@sei.cmu.edu (Bruce Benson) writes: > >Nope, just fears. I sat in a meeting where an individual (working in >one of the military service DoD secretariets) insisted that any university >that got federal money (ROTC, research grants, etc.) should be told to teach >Ada or have their money taken away. Luckily, no one took him too seriously, >but his position was such that many people have to take him seriously (and >he advises other more senior people on technical issues, such as Ada). Sheesh! No wonder Ada has a bad name, with guys like this rattling around the Ada business. I'll bet he's a friend of Reagan who believes that government should get off the backs of the people, too. :-) Every time I start thinking charitably, someone comes along and makes a good case for cynicism. Sad commentary. Mike Feldman
g_harrison@vger.nsu.edu (12/18/90)
In article <2585@cod.NOSC.MIL>, sampson@cod.NOSC.MIL (Charles H. Sampson) writes: > In article <2455@sparko.gwu.edu> mfeldman@seas.gwu.edu () writes: >>In article <9700@as0c.sei.cmu.edu> bwb@sei.cmu.edu (Bruce Benson) writes: >>> >>>If the percentage doesn't approach 100 fast enough then they will mandate >>>mindless translations. [stuff deleted] > to Ada and the wonderful tool they have to aid that transition. I've had > to critique a few of these efforts. The translated Ada was appalling, even > when the proponents were claiming that the program should be maintained (for > decades) in Ada rather than its original, natural, language. These efforts > always seem to be presented as quck-and-dirty proofs-of-concept, with pro- > mises that the final product will be truly wonderful, as soon as a lot of > our tax money is spent. > > Charlie Wouldn't it be wonderful to be able to translate [relatively] hard to maintain code to [relatively] easy to maintain Ada. Wasn't maintain - ABILITY one of the goals of the language and of the "mandate?" When someone foists a translator on us, we need to be able to show a useful Ada program that will never reverse-engineer into FORTRAN, etc. In my research I've been using a program to run a back-propogation neural network with delta learning rule and momentem terms. There are about ten FLOAT, STRING, and INTEGER parameters to the program that (in many cases) significantly alter the run-time characterists of the code. This neural network learns and recognizes all sorts of input patterns. The learning methods are easy to "tweek." etc. All of this is done without recompilation. I am "_NOT_" telling everyone what a cleaver programming I am; I am just saying that writing this in virtually any other language would be a real pain to maintain. I am reminded about making a silk purse out of a ...... [Excuse me for taking up your disk storage but...] A few years ago at the Nth Annual Ada Technology Conference someone presented some hard facts about maintaining a set of FORTRAN programs vs. rewriting them into [GOOD] Ada. Ada won, of course, and I suspect the speaker was somewhat slanted in his/her view. However, the facts were indeed impressive because it showed that Ada supports good software engineering practices in what can be an effecient way. It wasn't that Ada was the answer and FORTRAN wasn't: it was that good Soft. Eng. IS the solution to actually saving money. George ------------------------------------------------------*------o Happy--- -- George C. Harrison ------------------------------ * * ----o_o___ New--- ----- Professor of Computer Science -------------- * * * ----\ o /-Year-- ----- Norfolk State University, ----------------- *Merry* ----\ /-------- -------- Norfolk, Virginia 23504 --------------- * * * * * ----|--------- ----- INTERNET: g_harrison@vger.nsu.edu ------ *Christmas* --_|_-------- ----------These are MY views.... you may share them..*** -----------------
g_harrison@vger.nsu.edu (12/18/90)
In article <EMERY.90Dec17153931@aries.linus.mitre.org>, emery@linus.mitre.org (David Emery) writes: >>From: bwb@sei.cmu.edu (Bruce Benson) >>I sat in a meeting where an individual (working in one of the military >>service DoD secretariets) insisted that any university that got >>federal money (ROTC, research grants, etc.) should be told to teach >>Ada or have their money taken away. > > Actually, I think there's something to be said for this idea. Even > more, I think that any DARPA or DoD-funded project should submit a > waiver request to do their work in something besides Ada. Such > waivers should be reasonably easy to get, but there are a lot of > research projects that could be used on gov't systems, except for the > fact that they're implemented in languages that create a significant > maintenance/adaptability problem (e.g. C, lisp). > (The next thing we'll have is the government trying to tell us that we must teach the metric system. ;-) I disagree with the above statement. It's one thing mandating equal opportunity; it another trying to FORCE what we teach. There is still such a thing as academic freedom. Although I am the FIRST to propose using Ada as the primary procedural language in the classroom, I will not be forced to even offer one course in the language and its applications by the DoD. We do offer such a course and another course in specific Ada-like applications, but it was our choice to do this! > However, unless and until Ada compilers are as affordable as C > compilers (e.g. Gnu C), such a requirement will be financially > untenable, since most schools are unwilling to fork out the $$ for an > Ada compiler. I disagree again. Although Ada is not "free," there are relatively inexpensive compilers for PC's, and with educational discounts you can purchase a mini/mainframe compiler for about the same price as any other. George.... ------------------------------------------------------*------o Happy--- -- George C. Harrison ------------------------------ * * ----o_o___ New--- ----- Professor of Computer Science -------------- * * * ----\ o /-Year-- ----- Norfolk State University, ----------------- *Merry* ----\ /-------- -------- Norfolk, Virginia 23504 --------------- * * * * * ----|--------- ----- INTERNET: g_harrison@vger.nsu.edu ------ *Christmas* --_|_-------- ----------These are MY views.... you may share them..*** -----------------
rgc@raybed2.msd.ray.com (RICK CARLE) (12/18/90)
In article <EMERY.90Dec17153931@aries.linus.mitre.org>, emery@linus.mitre.org (David Emery) writes: > >From: bwb@sei.cmu.edu (Bruce Benson) > >I sat in a meeting where an individual (working in one of the military > >service DoD secretariets) insisted that any university that got > >federal money (ROTC, research grants, etc.) should be told to teach > >Ada or have their money taken away. > ......I think that any DARPA or DoD-funded project should submit a > waiver request to do their work in something besides Ada... > However, unless and until Ada compilers are as affordable as C > compilers (e.g. Gnu C), such a requirement will be financially > untenable, since most schools are unwilling to fork out the $$ for an > Ada compiler. What's stopping the DoD from buying up a ton of AdaZ licenses and furnishing them as GFE on DoD projects (esp. research & technology projects)? If anything should ever be GFE, it's Ada. I realize that sounds crazy. But I seem to remember announcements claiming that the Army bought 2 Army-wide site licenses for PC software this year - the Procomm+ communications program and the PKZIP archiver. I think both of those programs are inexpensive shareware that probably cost between $35 and $75 a copy. AdaZ only costs $149 (this month, anyway). So I suggest the DoD should do 2 things: 1) buy a DoD-wide site license from Meridian (how could either party lose?); and 2) extend that license to provide DoD with enough extra licenses so that DoD could provide the compiler as GFE to research and technology contractors. This would provide the universities with plenty of cheap Ada and eliminate a big obstacle to college-level Ada education. And it would reward Meridian for making such a cost breakthrough on Ada compilers. [Of course the site license wouldn't have to be purchased from Meridian. It could be put up for bids.] Rick Carle
bwb@sei.cmu.edu (Bruce Benson) (12/18/90)
In article <EMERY.90Dec17153931@aries.linus.mitre.org> emery@linus.mitre.org (David Emery) writes: >Actually, I think there's something to be said for this idea. Even >more, I think that any DARPA or DoD-funded project should submit a >waiver request to do their work in something besides Ada. Such >waivers should be reasonably easy to get, but there are a lot of >research projects that could be used on gov't systems, except for the >fact that they're implemented in languages that create a significant >maintenance/adaptability problem (e.g. C, lisp). These kind of fuzzy statements, that imply all the problems of software engineering will go away (or be *significantly* reduced) by using the current king of silver bullets (i.e. Ada), are at the heart of why we in government sometimes make such dumb decisions. We don't know that any of this is true, but we do know that the problems of software engineering are more centered on people and mangement problems than on technology problems. We focus on technology because it won't talk back. >However, unless and until Ada compilers are as affordable as C >compilers (e.g. Gnu C), such a requirement will be financially >untenable, since most schools are unwilling to fork out the $$ for an >Ada compiler. What about the rest of the supporting environment: editors, debuggers, libraries, code generators, readable books, jobs, etc.? (I had a boss who insisted that WordStar should be a fine programming editor since it can export ascii files!) Affordability of the compiler must be one of the least important issues when selecting a development environment (or a teaching environment). COBOL, FORTRAN, and now C, are still the most widely used and *supported* languages in the commerical world, and this dwarfs the government sectors need for Ada programmers. Universities like to not only educate their students, but possibly give them a skill that makes them readily employable. When Borland creates TurboAda or Microsoft does QuickAda, then the language is probably mature enough to hold its own. Until then, it remains an interesting experimental language by the government. [All the above is, of course, IMHO and does not necessarily reflect anyones thinking but my own :-)] * Bruce Benson + Internet - bwb@sei.cmu.edu + + * Software Engineering Institute + Compuserv - 76226,3407 + >--|> * Carnegie Mellon University + Voice - 412 268 8469 + + * Pittsburgh PA 15213-3890 + + US Air Force
mneerach@iiic.ethz.ch (Matthias Ulrich Neeracher) (12/19/90)
In article <737@ajpo.sei.cmu.edu>, progers@ajpo.sei.cmu.edu (Pat Rogers) writes: > In article <18173@neptune.inf.ethz.ch>, mneerach@iiic.ethz.ch (Matthias Ulrich Neeracher) writes: > > But then again, has there *ever* been something cost-effective > > produced for the Department of Defense ? > > Quite a bit, I would think. COBOL is not my favorite language, but it would > be difficult not to consider it quite an advance for the times, and cost- > effective over its lifetime. COBOL must have been an interesting idea in its time. The mistake, IMO, was to massively push its use. The "user-friendly" syntax seems now almost universally to be recognized as a disaster. As for cost-effective, I wonder whether it wouldn't have been even more cost-effective to delay the standardization for some years, in favor of a better language. I don't doubt that COBOL was a progress when it was created, but for how many years now has COBOL been a hindrance to progress. Likewise, I wonder whether it is really necessary and wise to hard-code all these laws requiring use of Ada now, thus forcing programmers to live with Ada's inconveniences for maybe 50 years or longer. > With respect to Ada, I have seen > a presentation by a fellow consultant to the effect that, once familiar with > the language, a very considerable increase in productivity is typical/possible. > (So it is not just a maintenance issue.) The distinguishing thing about the > presentation is that he claims to have the data to prove it -- a database of > many (>100) projects. My personal experience with the language (10 years) > agrees with his assertion. Does this data take into account that programmers using Ada were maybe subject to a lot of additional training ? At least in one small study I have read about, I wondered whether the (indisputable) improvements had anything to do at all with Ada or whether not all this could be explained with the improved training of the programmers and the greater attention given to them. > Pat Rogers Matthias ----- Matthias Neeracher mneerach@iiic.ethz.ch "These days, though, you have to be pretty technical before you can even aspire to crudeness." -- William Gibson, _Johnny Mnemonic_
rcd@ico.isc.com (Dick Dunn) (12/20/90)
emery@linus.mitre.org (David Emery) writes: > >From: bwb@sei.cmu.edu (Bruce Benson) > >I sat in a meeting where an individual (working in one of the military > >service DoD secretariets) insisted that any university that got > >federal money (ROTC, research grants, etc.) should be told to teach > >Ada or have their money taken away. > > Actually, I think there's something to be said for this idea... (I think there's something to be said for it too...but we probably don't agree on what should be said.:-) I think that it's high time Ada was cut loose from its life-support system of government-mandated ramming-down- our-throats and allowed to live or die. I'm serious. If Ada can't sur- vive on its own, it's not viable. (For the record, although I'm not much of an Ada fan, I do think Ada *can* survive. It won't be the top language, but it has its place(s).) In fact, I think that some of the mandated use of Ada has damaged its growth. People look at it and say "oh, that's only for government work, and it's all tied up in bureaucracy...we don't want it." >...Even > more, I think that any DARPA or DoD-funded project should submit a > waiver request to do their work in something besides Ada... This is the first step on a slippery path to a very uncomfortable level of government control. Again, if Ada is so desirable, why does it have to be forced? Let the folks who are doing the research choose the language they find appropriate to the tasks they need to do. I can see obvious cases for using at least C, C++, Icon, LISP, Ada, and assembly language in various aspects of research. As for using Ada for the mere sake of single- language consistency...well, see what Emerson had to say about consistency. > ...but there are a lot of > research projects that could be used on gov't systems, except for the > fact that they're implemented in languages that create a significant > maintenance/adaptability problem (e.g. C, lisp). I don't see that either C or LISP have any inherent maintenance or adaptability problems. Seems like it's more a problem of excessive narrowness or rigidity in gov't systems if they can't handle multi- lingual software. Note that the position I'm taking in the latter part of this posting is not anti-Ada, but anti-single-language. The idea that one programming language can be suitable for all programming tasks is bogus from the word go. -- Dick Dunn rcd@ico.isc.com -or- ico!rcd Boulder, CO (303)449-2870 ...Mr. Natural says, "Use the right tool for the job."
vtarbox@sleepy.bmd.trw.com (12/20/90)
I have followed, with some interest, the dialogue that has occurred since the posting by Mike Feldman outlining the "Legislative Mandate for Ada" [<2449@sparko.gwu.edu> mfeldman@seas.gwu.edu]. I thought some of you might be interested in the contents of an action memorandum issued at the Air Force secretariat level on 07 Aug 90. A complete unedited transcript is provided, below. It immediately implements AF policy establishing Ada as the single implementation language for *all* new (not just new weapon systems) and upgraded software systems in the Air Force. Please note the memorandum preceded the legislative action (Section 8092) by almost three months. What impact this will have on AF policy is unclear. It may have no impact depending upon the interpretation of the phrase "...where cost-effective..." in Section 8092. I hope the following sheds more light regarding the mind-set of the Air Force bureaucrats (and possibly others within DOD). It may create more fog depending upon interpretations from another viewpoint. If any have seen this before, I apologize for the repeat. Sorry for the length but I'm not the author. So here we go! --- THE MEMORANDUM --- 07 August 1990 Memorandum for the: Vice Chief of Staff Major Command Separate Operating Agency Direct Reporting Unit Commanders Air Force Program Executive Officers Subject: Air Force Policy on Programming Languages - Action Memorandum Growing mission demands for software, particularly in the austere budget environment we face, require a solid commitment to software engineering. Ada is more than a language; it is a proven technology that facilitates software engineering, reducing risk and life-cycle costs. Accordingly, the attached policy establishes Ada as the single implementation language for all new and upgraded software systems in the Air Force. This policy supersedes CSAF/CVA letter, Air Force Policy on Programming Languages, November 9, 1988. Now is the time to move aggressively to Ada. Please give your personal support to ensuring that the attached policy is fully implemented within your organization. The Air Staff will incorporate this policy into an appropriate Air Force regulation applicable to all software domains. Signed: Lloyd K. Mosemann, II Deputy Assistant Secretary of the Air Force Communications, Computers, and Logistics --- THE ATTACHMENT --- PROGRAMMING LANGUAGES POLICY 1. INTRODUCTION Air Force policy requires the use of the Ada programming language as defined in ANSI/MIL-STD-1815A-1983 (Ada Programming Language, 22 January 1983). This policy implements DOD Directives 3505.1 (Computer Programming Language Policy, 2 April 1987) and 3505.2 (Use of Ada in Weapon Systems, 30 March 1987). This policy remains in effect until it is published in an Air Force regulation. 2. DEFINITIONS a. Ada Implementation: A software system in which Ada is used to meet all or most of the language requirements. Use of other languages in an Ada implementation will be limited to those needed for special functions and requires and "exception request". b. Commercial-Off-The-Shelf (COTS) Software: Software already developed, tested, and sold to other DOD or commercial customers, supported by a commercial vendor over the system life-cycle, and requiring no government modifications over the system life-cycle. c. DOD approved High Order Languages (HOLs): The languages listed in Enclosure 3 to DOD Directive 3405.1 (Computer Programming Language Policy, 02 April 1987). - Ada - SPL/1 - COBOL - CMS-2M - CMS-2Y - PASCAL - C/ATLAS - FORTRAN - JOVIAL J73 - MINIMAL BASIC d. Forth Generation Languages (4GLs): Nonprocedural COTS computer programming languages which consist of compact, English-like statements which describe the overall tasks a computer is to carry out without specifying any individual steps or their order. For the purpose of this policy, 4GLs include products which generate HOL Code. e. Software engineering: The science of analysis, design, development, implementation, test, evaluation, and maintenance of computer software over its life-cycle. f. Validated Ada Compiler: A compiler registered with the Ada Joint Program Office (AJPO). A project-validated compiler, a compiler that is registered with the AJPO at project start or Milestone 0, is considered validated for the entire life-cycle of the designated project. 3. APPLICABILITY This policy applies to all Air Force organizations to include both in-house and contractor work. It covers all computer software systems, e.g.: - Weapon - Intelligence - Information Systems - Command and Control - Automatic Test Equipment developed, acquired, or managed under the AFR 700 series, AFR 800 series, or AFR 57-4, and includes software for the entire range of computer hardware. 4. EXEMPTIONS a. Desktop computers and workstation software developed for individual use, stand alone, unique in-house applications. b. Short term/adhoc user applications (less that three years useful life). c. Products that come with software (e.g., automotive diagnostic systems) for which the Air Force has no maintenance responsibility. 5. POLICY a. The Ada programming language, as defined in ANSI/MIL-STD-1815A-1983, is the single, common, high order computer programming language for all computer resources used in the Air Force. A validated Ada compiler and modern software engineering principles that facilitate the use of Ada must be used, unless a waiver has been granted. The order of preference to meet Air Force software requirements follows: (1) Reuse/modify existing Ada code. (Waiver Not Required). (2) Use COTS software (software requiring no modifications or government maintenance). (Waiver Not Required). (3) Develop new Ada code. (Waiver Not Required). (4) Use 4GLs that generate Ada code or support Database Language SQL (Federal Information Processing Standard 127-1). (Exception Request Required). (5) Develop non-Ada code, modify COTS, or use 4GLs that generate non-Ada code or do not support SQL. (Waiver Required). [Note: A waiver is required to use DOD-approved HOLs (except Ada) and non-DOD-approved languages (e.g., C and Assembly)] b. Systems under development using a non-Ada language that was authorized prior to the effective date of this letter may continue to use non-Ada through deployment and maintenance. (Waiver Not Required). c. Ada is required when more that one-third of the existing code is altered (excluding COTS) at any one time. (Under one-third, Waiver Not Required). System Managers are encouraged to move to Ada with any software or hardware upgrade. d. 4GLs can be used to support rapid prototyping and evolutionary development. (Exception Request Required). e. Other languages (e.g., Assembly, C, C/ATLAS, 4GL, another HOL) may be mixed with the Ada code in an Ada implementation for a special function or routine. (Exception Request Required). f. If Ada is used for Unit Under Test (UUT) and Automatic Test Equipment (ATE), it shall use C/ATLAS standard nouns, noun modifiers, and procedural terminology (i.e., verbs, macros) and be consistent with the intent of standards being developed within the Institute of Electrical and Electronic Engineers (IEEE) effort called ATLAS/Ada Based Environment for Test (ABET). g. Support Tools which PMRT to AFLC with specialized operating systems, (e.g., simulators, stimulators) for which no validated Ada compiler exists. (Waiver Not Required). h. Industrial Process Equipment Acquisition (IPEA) programs for which AFLC is the implementing command, to include stand-alone microcontroller devices and devices where microcomputers are used as microcontrollers. (Waiver Not Required). i. For small projects where using Ada is not feasible or cost effective over the system life-cycle, and an exception request, instead of a waiver request, may be used. 6. WAIVERS a. Waiver requests must contain a description of the project, the rationale and/or justification for not using Ada, and a life-cycle analysis. The analysis must show that the recommended solution is the most cost effective and most beneficial to the Air Force over the system life-cycle. As a minimum, the analysis must: (1) Use a 10-year life-cycle, if actual life-cycle is unknown. (2) Use approved DOD inflation rates. (3) Specify development, life-cycle maintenance, training, and replacement costs. (4) Address portability, reuse, performance, and risk. (5) Include a statement of maintainability from the responsible software maintainer. b. The cost/effort to do the analysis should be commensurate with the size and cost of the project. For example, developing an Ada compiler/support environment may not be cost effective for some projects over the system life-cycle. c. Waiver requests will be submitted through appropriate levels (unit, base, MAJCOM/SOA, Air Staff functional area) to HQ USAF/SC as early as possible in the development cycle. Waivers must be approved before a commitment is made to the architecture (i.e., before release of the final Request for Proposal for contractor software development, and before system design begins for in-house development). HQ USAF/SC will staff waiver requests with cognizant HQ USAF offices and make a consolidated recommendation of SAF/AQ, the sole USAF Ada waiver approval authority. d. Waiver requests for Class IV modification programs with cost of more the $10M, will be part of the program package staffed at HQ USAF. The Ada waiver will be included in the package and will be staffed in conjunction with the program. An informational copy may be sent to HQ USAF/SC, but will not be acted upon until validated by the appropriate level. 7. EXCEPTIONS a. An exception request, instead of a waiver request, will be submitted through appropriate levels to HQ USAF/SC for approval, and must be approved before implementing the solution. The exception request must include a description of the project and the rational/justification for the exception An information copy may be sent to HQ USAF/SC, but will not be acted upon until validated by the appropriate level. b. An exception request is not required for test equipment procured to be compliant with Modular Automatic Test Equipment (MATE) standards. This includes the use of the government furnished MATE Control and Support Software (MCSS), written in JOVIAL, which accommodates ATLAS constructs in the test program. However, our intention is to develop Ada for MATE applications, and program offices are encourage to develop Ada usages in advance of formal MATE conversion. 8. TECHNICAL ASSISTANCE Technical assistance on use of Ada (tools, environments, bindings, software engineering, training, and data base management systems) is available from HQ USAF/SCTT, DSN 225-9934 or DSN 223-2699. Lloyd K. Mosemann, II Deputy Assistant Secretary of the Air Force Communications, Computers, and Logistics SAF/AQK Room 4E128 Pentagon Washington, DC 20330 DSN 227-3624 (703) 938-4843 --- END OF ACTION MEMORANDUM --- Val Tarbox TRW Space & Technology Group 801-625-8024