What is Ada
Ada is a language originally designed to reduce the cost of writing
embedded systems for USA Department of Defense projects. The 1983
version of the language (Ada83): incorporated much of the accepted
wisdom on software engineering of the time:
- Data Structures - Pascal/C like but safer:
- Arrays have bounds before use and bounds are available and checked
- Pointers are under control
- Unions are tagged
- Type conversions are explicit
- Can be encapsulated by an abstract description
- Modularization
- Separate compilation
- Inter-module type checking
- Information hiding/encapsulation/abstraction
- Cooperative parallel processes(tasks),
- Exceptions,
- Generics/templates replacing Macros
- Least error prone syntax(based on experimental data)
The name was protected
so that a company could only call their product "Ada" if it passed
a large set of tests. In this version there was hardly any support
for inheritance, mathematical and scientific programming, commercial
programming, System programming. However it did contain some unique
features for real time work including: tasking, exceptions, delays,...
It has been criticised for being
- Too Complex to be safe(Hoare)
- Too Verbose (Any C programmer)
- Not Object Oriented (Any C++/Smalltalk programmer)
- Mandated (Most conservatives and/or democrats)
The new standard was released in Spring 1995 (Ada95):
The designers claim that Ada95 does address the concerns
of the object-oriented, commercial, scientific, and system programming
experts. They also added a neat way to efficiently and safely share data
between parallel tasks(inheritance). Time will tell...
To order the standard information got to
[ lrm.htm ]
Locally held Information
(Ada95):
[ ada95.html ]
(Ada83 Glossary):
[ ada.glossary.html ]
(Ada83 Syntax):
[ ada.syntax.html ]
(Ada83 Examples):
[ http://www.csci.csusb.edu/dick/cs320/ada/ ]
(Ada83 Language Reference Manual LRM):
[ http://www.csci.csusb.edu/dick/cs320/ada/lrm/ ]
(Ada83 Documentation):
[ Ada.AIX ]
(Ada83 BNF):
[ Ada.bnf ]
(Ada83 FAQ):
[ ada.FAQ ]
[ ada.pal.FAQ ]
. . . . . . . . . ( end of section Locally held Information) <<Contents | End>>
Ada on the WWW
The Home of the Brave Ada Programmer
(HBAP):
[ http://www.adahome.com/ ]
(awarded a 4-star rating).
This site has tutorials, reference manuals, news, FAQs, Resources, an more.
(ACM SIGADA): ACM special interest group in Ada
[ http://info.acm.org/sigada/ ]
(AJPO): Ada at Falls Church, Virginia, USA
[ http://sw-eng.falls-church.va.us/ ]
(Ada95 LRM): The Ada 95 Language Reference Manual is at HBAP.
(AdaBasis Ada library): Basic Data Types etc
[ ada-software.html ]
(FAQ):
//rtfm.mit.edu/pub/usenet-by-group/news.answers/computer-lang/Ada