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-Thread: 103376,42490cad53ee37fa X-Google-Attributes: gid103376,public X-Google-Language: ENGLISH,ASCII-7-bit Path: g2news1.google.com!news4.google.com!news.glorb.com!hermod.ttsg.com!news-out.ntli.net!newsrout1-gui.ntli.net!ntli.net!newspeer1-win.ntli.net!newsfe1-gui.ntli.net.POSTED!53ab2750!not-for-mail From: "Dr. Adrian Wrigley" Subject: Re: NOACE- End of the road for Ada? User-Agent: Pan/0.14.2 (This is not a psychotic episode. It's a cleansing moment of clarity.) Message-Id: Newsgroups: comp.lang.ada References: <87f5a614.0503121108.5b245eaf@posting.google.com> <87f5a614.0503130444.66e658e4@posting.google.com> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 8bit Date: Sun, 13 Mar 2005 23:20:32 GMT NNTP-Posting-Host: 81.100.88.147 X-Complaints-To: http://www.ntlworld.com/netreport X-Trace: newsfe1-gui.ntli.net 1110756032 81.100.88.147 (Sun, 13 Mar 2005 23:20:32 GMT) NNTP-Posting-Date: Sun, 13 Mar 2005 23:20:32 GMT Organization: ntl Cablemodem News Service Xref: g2news1.google.com comp.lang.ada:9337 Date: 2005-03-13T23:20:32+00:00 List-Id: On Sun, 13 Mar 2005 09:22:26 -0500, Stephen Leake wrote: > svaa@ciberpiula.net (svaa) writes: ... >> Stephen Leake wrote in message news:... >> NOACE movement is a good show of what's going on related to Ada. For >> each new project in Ada with a big hype in Ada related conferences, >> congresses, and websites, you can find 100 projects that are giving up >> Ada silently. > > Hmm. If they are "silent", how do you find them? > > If that statistic were true for the last several years, no Ada company > would be in business now, since no company can lose 99% of its > business several years in a row and survive. That is demonstratably > false; just look at the AdaIC list of Ada compiler companies; it has > been stable for the last several years. > > So I conclude your statistic is not true. If there had been 1,000 projects, losing 100 projects silently, and gaining one project (with fanboy fanfare) gives 901 projects remaining. This could last all of... ten years before anihilation. It's even plausible, if you count projects (eg) >5M SLOC. But it is not a 99% loss each year. Curiously, in the world of hardware/chip design, the same debate about VHDL (with Ada's discipline/syntax) vs. Verilog takes place. But VHDL has a large (not majority) base. Nobody seems to worry much about VHDL being a DoD language. And its fanaticism for precision and reliability isn't seen as useless, redundant or lacking "power". But the "new" upstart in hardware design (amazingly) is "C" (subsetted, tweaked). (The hope is you can get programmers to design hardware!) I've always thought that Ada would benefit by being much more closely associated (even merged) with VHDL. But (AFAICT) few VHDL users have ever used Ada, and vice-versa. Given that they are nearly identical*, why are no synergies found? The "Teaching new tricks..." debate shows how *amazingly* ill-informed people are about the Ada language features. (people say "do not think it supports generic programming", '"manually added checks" in C++ would be identically eliminated to the automatic checks in Ada', 'what's the use of rep. specs, except to restrict portability(?)' etc.) Clearly the beliefs and reputation are a major part in language choice. The three ways you can make a popular language are: 1) extend a popular language (C++, F77) 2) start from scratch with big budget (Java, C#) 3) fill a big market vacuum with something that works (Fortran, C, Cobol, PostScript, Perl ) I'm not aware of any popular languages that came about in any other way. Ada tried to be 2, 3. But the market vacuum was in the eyes of the DoD, not the users/contractors. Ada has failed to become a popular language (in terms of users), and now none of these three possibilities can be used to rectify the situation. Any language designer/advocate who wants to promote the Ada ideals would be best trying again (don't start from here!). For example: find a popular language and transplant Ada features (C99 with tasks, arrays, generics etc? (a real bastard)(too late?) takes us back to the infamous "Ada syntax turns people off!) get a big backer to force a new Ada-inspired language into the market (too late for C# or Java, but they could easily have taken much more from Ada, if enough of the right persons had been there!) think up something radical and new in programming, and infuse it with Ada principles. (we had 4GL and Fifth Generation, what next? 6GL? Wikipedia doesn't yet have "Sixth-Generation languages" entry!) (my personal view is that a decent "visual programming language" could find a market vacuum sometime in the next thirty years, and is ready to be invented. Nothing so far has been terribly useful or general, so the field has been written off.) (any more ideas on this topic?) back to the original topic... NOACE does seem to be a real step backwards. It looks a lot like a "Java Mandate", but acknowledges that there will be many exceptions, which C++ would probably meet. I think it's very risky, since newer languages tend to have a shorter lifespan and change faster than mature languages. It clearly is motivated by much more than the technical merits of the language. But if colleges switch to teaching "C2#" or "Guam" a decade from now, they might be stuck with a poor technical solution, serviced by a declining programmer base. And if they have to have specialized variants of Java for their high reliability, sub-microsecond real-time applications, they risk having a total "language isolate" on their hands. Interesting that Boeing doesn't like Ada or C++. It'd be interesting to understand why each of these fails to meet their needs. Particularly since both languages' advocates usually say they are much more suitable than Java for almost application! It all seems a bit weird... -- Adrian * (main differences: "library" <-> "with", tasks /= processes, generics /= generics (sadly!), Ada lacks architectures, signals or physical types, VHDL lacks tagged types)