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: f849b,d275ffeffdf83655 X-Google-Attributes: gidf849b,public X-Google-Thread: 115aec,d275ffeffdf83655 X-Google-Attributes: gid115aec,public X-Google-Thread: 146b77,d275ffeffdf83655 X-Google-Attributes: gid146b77,public X-Google-Thread: 1108a1,d275ffeffdf83655 X-Google-Attributes: gid1108a1,public X-Google-Thread: f5d71,d275ffeffdf83655 X-Google-Attributes: gidf5d71,public X-Google-Thread: 101b33,d275ffeffdf83655 X-Google-Attributes: gid101b33,public X-Google-Thread: 109fba,d275ffeffdf83655 X-Google-Attributes: gid109fba,public X-Google-Thread: 103376,d275ffeffdf83655 X-Google-Attributes: gid103376,public From: Matthew Heaney Subject: Re: Ada vs C++ vs Java Date: 1999/01/16 Message-ID: #1/1 X-Deja-AN: 433229069 Sender: matt@mheaney.ni.net References: <369C1F31.AE5AF7EF@concentric.net> NNTP-Posting-Date: Fri, 15 Jan 1999 21:02:17 PDT Newsgroups: comp.lang.ada,comp.lang.c++,comp.vxworks,comp.lang.java,comp.java.advocacy,comp.realtime,comp.arch.embedded,comp.object,comp.lang.java.programmer Date: 1999-01-16T00:00:00+00:00 List-Id: "Erik Funkenbusch" writes: > >- be available for popular processors (such as 68xxx, PowerPC, etc.) > > Processors aren't the key, OS platforms are. You're most safe with C++ on > this matter i think. Java isn't available on everything yet. You're also > likely to find limited choices in ADA compilers on more obscure OS's. This is a weak argument. The Ada front end marketed by AverStar (formerly Intermetrics) emits human-readable C code, and therefore you can use it where-ever there's a C compiler available. If you want a real compiler (instead of a "mere" translater), then contact Tucker Taft about price. gnat is also very portable. Contact ACT about the cost of a port for your "obscure" OS. Note also that Ada is not an acronym, and is therefore spelled using title-format, not all-uppercase. The language was named after a woman, Ada Lovelace, assistent of Charles Babbage and the first programmer. > >- enjoy wealth of existing solutions > > If you mean add-on libraries, again this is mostly OS platform related, > although there are certainly a number of platform independant libraries as > well. I don't know much about the 3rd party ADA market, but C++ certainly > has a strong support here. You can call the library directly from Ada (via a thin binding), or (what I prefer) just call a thin layer of code (say, written in C) that itself calls the library. > >- be suitable for design of embedded systems > > C++ generally isn't. There is an "embedded C++" that's in the works, and > there might even be some implementations. C is better for embedded work > than C++. I don't know the specifics of ADA embedded work. Although Ada is a general purpose programming language, it was originally designed for use in embedded systems. For example, in Ada you don't need to use the heap to return a unconstrained array from a function: declare S : constant String := Name (File); begin No heap required! (Of course, if you do need to allocate off the heap, then you can substitute your own allocator, one the has the precise time and storage behavior you require for your embedded application. But, in many of instances where heap is required in C/C++, no heap usage is required in Ada.) > >There is a legacy code written in Ada and our customer would prefer Ada > >95. However, we became seriously concerned that there is not sufficient > >support for Ada in the commercial world. > > Well, there seems to be plenty of vendor support for ADA, but I think you > won't find as much 3rd party library support. That means you'll be stuck > writing everything from scratch in most cases. What specific 3rd party library support are you talking about? Are there libraries that exist that you can't call from Ada? Many people unfamiliar with Ada don't realize that Ada was designed to directly support calling code written in other languages. The argument about "libraries not being available" is very weak. >> Given, that we will be stuck with our project for the next several >> years we would like to choose something that still will have adequate >> support few years down the road. Given all that we decided to check >> C++ and Java. I would appreciate greatly any comparisons, comments, >> hints, pointers to electronic and hard copy sources, warnings about >> traps and pitfalls, etc. that would help us thoroughly justify the >> language choice to our customer. > > ADA is mature, and has proven itself in military applications and stability > over the years. Ada has proven itself in more than "military" applications. It is the language of choice for _commercial_ applications that have high integrity requirements. Many people unfamiliar with Ada think it's only used in military applications. This is incorrect. -- Those who believe in the supernatural should be required to learn computer programming. This would force them to discover that things which appear at first to be completely mysterious and incomprehensible, in fact have a logical (and usually simple) explanation. --J.B.R. Yant