Over 100 members in 35 countries are currently teaching Ada and SPARK using the GNAT Academic Program.
The GNAT Academic Program (GAP) links teachers of Ada and SPARK the world over and provides a way for members to exchange knowledge and resources.
From the Blog
- Using Ada for a Spanish Satellite Project
by Juan Zamorano, Universidad
Politécnica de Madrid - Winning DTU RoboCup with Ada and SPARK
by Per Dalgas Jakobsen, Danish
Technical University - Ten Years of Using SPARK to Build CubeSat NanoSatellites With Students
By Peter Chapin, Vermont Technical College - Train Control Using Ada on a Raspberry Pi
by Julia Teissl, FH Campus Wien
GAP Newsletters
Events
Capstone Program
Why Teach Ada and SPARK?
Ada embodies the best contemporary ideas in software technology.
Ada is a modern programming language designed for large, long-lived applications – and embedded systems in particular – where safety and security are essential. It sees significant usage worldwide in the high-integrity and safety-critical domains, including commercial and military aircraft avionics, air traffic control, railroad systems, and medical devices.
SPARK expands the boundaries of safe and secure programming.
SPARK is a software development technology specifically designed for engineering high-reliability applications. It consists of a programming language, a verification toolset, and a design method which, taken together, ensure that ultra-low defect software can be deployed in application domains where high reliability must be assured, for example where safety and security are key requirements.
Students exposed to Ada and SPARK at an early stage of their career become more skilled and principled programmers.
With their embodiment of modern software engineering principles, Ada and SPARK are excellent teaching languages for both introductory and advanced computer science courses in elementary programming, data structures, software engineering, and advanced courses in compiler construction. Ada, in particular, has been the subject of significant university research, especially in the area of real-time technologies.
The GAP Package
GAP helps put Ada and SPARK at the forefront of university study.
GAP’s primary objective is to provide a collaborative platform for educational materials, knowledge, and resources. It enables the creation and exchange of ideas about using Ada and SPARK within an academic setting. It also encourages teachers to share experiences with these languages from their professional work.
Benefits of Membership
Membership in GAP includes access to a worldwide community of academic professionals and a wealth of knowledge, tools, and resources designed to provide educators with all they need to teach Ada and SPARK.
In addition, all members receive direct, professional support, including assistance in using the Ada/SPARK tooling, suggestions for workarounds when issues arise, and help in understanding Ada 2022, 2012, 2005, 95, and SPARK.
Membership is open to teachers, as well as graduate students using Ada or SPARK technologies in the context of a Master’s thesis or Ph.D. AdaCore provides the GAP Package to members at no cost.
Tools and Resources
AdaCore has assembled a number of useful tools and resources specifically designed to help GAP members teach Ada and SPARK, including:
The Alire source-based package manager for Ada/SPARK (https://alire.ada.dev/)
Our popular online Ada and SPARK e-learning platform (https://learn.adacore.com)
A set of courses available exclusively to GAP members
The Community
Membership in GAP includes access to a worldwide community of academic and industry professionals offering a wealth of knowledge and resources to inspire new courses and projects, including:
Tutorials
Lecture modules and notes
Lab exercises
Slide presentations
Articles and papers
Ideas for student projects
Books and videos
Programming challenges
Capstone projects
Apprenticeship programs
GitHub