Ada
Full course · 21 lessonsAda is a high-integrity, statically-typed programming language designed for safety-critical and real-time systems. It is used extensively in aerospace, defense, railway, and medical systems where reliability is paramount.
Getting Started with Ada
GNAT toolchain, hello world, and the Ada model.
Types and Subtypes
Ada's strong typing, ranges, and derived types.
Variables and Constants
Object declaration, initialization, and constants.
Operators and Expressions
Arithmetic, relational, and logical operators.
Control Flow: if, case, loops
Conditionals, case statements, and loop forms.
Strings
Fixed, bounded, and unbounded strings.
Arrays
Indexed and multi-dimensional arrays with bounds.
Records and Variants
Record types, discriminants, and variant records.
Procedures and Functions
Subprograms, parameters, and modes.
Exceptions
Raise, handle, and propagate exceptions.
Packages and Visibility
Spec/body separation and encapsulation.
Generics
Generic subprograms and packages for reuse.
Access Types and Pointers
Pointers, allocation, and controlled types.
Tagged Types and OOP
Object-oriented programming in Ada.
File Input/Output
Text and binary file handling.
Tasking and Concurrency
Ada's native tasking model.
Command-Line Interfaces
Parse arguments and build tools.
Pragmas and Preconditions
Compiler directives and contracts.
SPARK and Formal Methods
High-integrity subset with proof tools.
Embedded and Real-Time Ada
Ravenscar profile and low-level control.
Ecosystem and Next Steps
Alire, libraries, and production Ada.
Free Books
Ada Programming Wikibook
A comprehensive free textbook covering Ada from basics to advanced concurrency and real-time programming.
Ada Distilled
A concise Ada reference guide by AdaCore covering language fundamentals and best practices — free PDF.
Ada 2022 Reference Manual
The official Ada language reference manual (free PDF) — the definitive specification.
Official Documentation
Ada Resource Association
The central hub for Ada resources, standards, compilers, and community tools.
AdaCore Learn
Interactive Ada tutorials from the makers of the GNAT compiler covering fundamentals to advanced topics.
Ada Information Clearinghouse
Official learning resources, tutorials, and curriculum materials for Ada education.

