comp.lang.ada
 help / color / mirror / Atom feed
* Opinions on Ada 95
@ 1997-09-20  0:00 Speak To My Heart
  0 siblings, 0 replies; 2+ messages in thread
From: Speak To My Heart @ 1997-09-20  0:00 UTC (permalink / raw)



Hello.  I'm writing on behalf of a group of four fellow undergraduate
computer science students at the University of Maryland Baltimore County.
We are drafting a report on Ada 95, an assignment in one of our CS classes
this semester.  We intend to discuss the history of Ada, an overview of
Ada 95's features, and recommendations for its value in business
applications (which we have yet to decide specifically on).

Our group feels that objective opinions from people who have experience
with Ada 95 will help us better determine how well Ada 95 has been
received by the programming community.  Answers to any or all of the
following questions from anyone who has used Ada 95 would be greatly
appreciated:

1.	Why do/did you use Ada 95?
2.	Do you like using Ada 95?
3.	How does Ada 95 compare with other object-oriented languages?
4.	What tasks is Ada 95 an excellent choice of language to program
	in?
5.	What tasks is Ada 95 a poor choice of language to program in?

Thanks in advance for any insight any of you can offer.

+-----------------------------------------------------------------+
| || //      ||                 C o m p u t e r   S c i e n c e   |
| ||//       ||--\                          U M B C               |
| ||\\       ||  ||         k b a t t l 1 @ g l . u m b c . e d u |
| || \\ EVIN ||__// ATTLE       kevinbattle @ rocketmail . com    |
+-----------------------------------------------------------------+





^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: Opinions on Ada 95
       [not found] <Pine.SGI.3.95.970930231124.14837D-100000@umbc9.umbc.edu>
@ 1997-10-02  0:00 ` Michael Stark
  0 siblings, 0 replies; 2+ messages in thread
From: Michael Stark @ 1997-10-02  0:00 UTC (permalink / raw)



Speak To My Heart wrote:
> 
> Hello.  I'm writing on behalf of a group of four fellow undergraduate
> computer science students at the University of Maryland Baltimore County.
> We are drafting a report on Ada 95, an assignment in one of our CS classes
> this semester.  We intend to discuss the history of Ada, an overview of
> Ada 95's features, and recommendations for its value in business
> applications (which we have yet to decide specifically on).
> 
> Our group feels that objective opinions from people who have experience
> with Ada 95 will help us better determine how well Ada 95 has been
> received by the programming community.  Answers to any or all of the
> following questions from anyone who has used Ada 95 would be greatly
> appreciated:
> 

Here are my answers for the world to see ;)

> 1.      Why do/did you use Ada 95?
I have been using the AppletMagic compiler, which compiles Ada 95 into
Java byte code.
I have used Ada 83 extensively and was looking at ideas for reusing
large amounts of
existing Ada code in the Internet environment.  Go to
http://fdd.gsfc.nasa.gov/ and 
follow links to Java pages to see a small orbit application that uses
Ada 95, most of
which was adapted from existing Ada 83 code, and has a GUI implemented
in Java.

> 2.      Do you like using Ada 95?
Yes -- it is a logical upgrade of Ada 83 to a full OO programming
language, as well as
addressing other shortcomings of Ada 83.

> 3.      How does Ada 95 compare with other object-oriented languages?
As far as OO features, it has pretty much a standard single-inheritance
approach.  It
also looks fairly easy to simulate Java interfaces using Ada 95, but I
haven't tried
this out yet.  Where Ada 95 is superior is in its other features -- it
has several
primitives to support concurrency (tasks, protected types), and a lot of
features that
make it a real pain to compile but much easier to get correct results
once it does.

For example, in C you could do a loop (pardon my syntax if it's wrong --
I don't use
C too often) to compute the inner product of vectors where the length is
variable

IP = 0
for (i=0,i<n,i++) IP = IP + v1(i)*v2(i).

If the value of n is incorrect, you cause all sorts of havoc.  And while
this seems
obvious even experienced programmers make this kind of mistake and spend
much time
debugging it.

In Ada, you would write the loop control as

for i in v1'range loop ... end loop;

meaning that you are using the attribute of the vector to assure you
don't run off the
memory occupied by it.  You could also check v1'length = v2'length to
make sure you
aren't multiplying incompatible vectors.  Obviously this can be done in
any language --
using the predefined attributes provided by Ada makes the process less
error prone.

This is a single example of a way of thinking that makes me like Ada.
   
> 4.      What tasks is Ada 95 an excellent choice of language to program
>         in?
The one's it is designed for -- embedded systems (weapons or otherwise)
and extremely
large software systems > 1 million lines for example, where the
reliability features
become even more critical.  The Ada zealots promote the language as "Ada
-- where
failure is not an option", which is a good rule of thumb for where the
language is
particularly strong.
> 5.      What tasks is Ada 95 a poor choice of language to program in?

If you have a large amount of C++ code, or applications that are suited
to 4GLs, you
probably don't want to use Ada.  Ada has interfaces to C, FORTRAN and
COBOL built in,
but only works well with C++ when certain combinations of compilers
(specifically GNU
C++ and Ada (GNAT) compilers) are used.  I have had good success in
integrating Ada 
with Java using Appletmagic, and the GNAT compiler is also being
upgraded to generate
Java byte code.

I've cross-posted to comp.lang.ada to allow the true believers to give
you even more
information.  Another place to learn about ada is at www.adahome.com,
which has more
information than you can possibly use for a single paper -- you should
be able to find
what you need there.  good luck with your paper.

Mike
> 
> Thanks in advance for any insight any of you can offer.
> 
> +-----------------------------------------------------------------+
> | || //      ||                 C o m p u t e r   S c i e n c e   |
> | ||//       ||--\                          U M B C               |
> | ||\\       ||  ||         k b a t t l 1 @ g l . u m b c . e d u |
> | || \\ EVIN ||__// ATTLE        4  1  0  4  5  5  1  9  2  7     |
> +-----------------------------------------------------------------+




^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~1997-10-02  0:00 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
     [not found] <Pine.SGI.3.95.970930231124.14837D-100000@umbc9.umbc.edu>
1997-10-02  0:00 ` Opinions on Ada 95 Michael Stark
1997-09-20  0:00 Speak To My Heart

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox