Ada is a structured, statically typed, imperative, wide-spectrum, and object-oriented high-level computer programming language, extended from Pascal and other languages.
Ada is a structured, statically typed, imperative, wide-spectrum, and object-oriented high-level computer programming language, extended from Pascal and other languages.Wikipedia
New to Ada?
Welcome! For learning any language, starting off with a good book is highly recommended. Ada is no different. Ada is different however in the number and quality of online resources available for free. A good starting point is the list of Ada Books On-Line. Once you have some basic learning under your belt, many find Ada LRM to be all the reference they ever need. The Ada Information Clearinghouse also provides a lot of useful links for learning Ada.
If you are looking for a good compiler, GNAT is a production-quality GCC-based Ada compiler that is freely available for Windows, OS X, and Linux; more here. Support and more platforms are available from AdaCore. If you want a more Windows-native compiler, Aonix ObjectAda uses the Microsoft linker, so it can be easier to use in an integrated Windows environment.
Versions
There are multiple versions of the language, named based on the year the ISO standardized the language. Thus there currently are Ada83, Ada95, Ada2005 and Ada2012. Any of those can be referenced as Ada, although the term is more appropriate for the latest version of the language.
- Rationale for Ada 2012
- Rationale for Ada 2005
- Rationale for Ada 95
- Ada 83 Rationale for the Design of the Ada® Programming Language
Have a question?
When you ask a question, be sure to include any relevant source code. Try to keep the code as minimalist as possible while still reproducing the problem; often the problem will be found during the process. If there are any compiler errors, be sure to indicate:
- Which compiler you are using?
- Exactly what errors are shown?
- On which lines do they occur (mark the lines with comment)?
It is recommended to enable syntax highlighting in the source code that you add to the question. Use the following syntax:
``` lang-ada
-- Ada source code goes here
```
External FAQs
- Ada FAQ
- comp.lang.ada FAQ - very old, but quite comprehensive (for its day).
Other External Resources
- J. P. Rosen's talk Memory Management with Ada 2012 is excellent for anyone who needs to understand the memory-control mechanisms in Ada, or anyone who is coming from C.
- AdaPower has lots of good information, including some code samples.
- The Ada Information Clearinghouse is sponsored by a coalition of Ada vendors and has a lot of very important information, including all the official language documents online (for free, unlike most languages!), and a list of officially validated compilers.
- The Ada Sub-Reddit provides links to news, articles, and other items of interest about the Ada programming language.
- Ada Programming on Wikibooks.
- Channel #ada on freenode.net
- LEARN Ada language courses providing an online compiler.
- Category:Ada examples on Rosetta Code.