Free Tools and Libraries

Looking for something specific? Consider using the Ada-wide search engine, which searches all of these sites and many more — but only Ada-related sites, so it’s much easier to find relevant results.

Can’t find it here? Also check Professional Tools and Services.

General Collections of Tools and Libraries

  • AdaBASIS
    “AdaBasis, an acronym for the German phrase ‘Bibliothek anwendungsbezogener Ada Software-Komponenten in Stuttgart,’ is a repository of (mostly) free Ada Software, presented in a way that is (hopefully) easy to use and allows flexible access and effective searching. The software in this repository is based mainly on the PAL and is still extending. It is presented in a hierarchical manner, separated in different application domains, and, for some domains, with an additional searching facility.”
    • Artificial Intelligence
    • Compilers
    • Database Management
    • Documents
    • Text-Processing
    • Interfaces/Bindings
    • Mathematical Functions and Data Structures
    • Networking and Distributed Processing
    • Software Development Tools
    • Various other Tools

  • Ada and Software Engineering Library
    This site is the on-line version of the famous ASE CD-ROMs. It contains over 1.3 Gigabytes of information on Ada, including libraries, tools, educational materials, and compilers. This library is now hosted in the AdaIC’s archives, as the previous site has gone off-line. The library is also available via FTP at Ada Belgium’s site.

  • Libre Software
    GPLed software for Ada and other languages.

  • Rosetta Code
    Rosetta Code shows common problems solved in a variety of programming languages, including Ada.

Single-source Collections of Tools and Libraries

  • Ada in Astrophysics
    This is a collection of libraries related to the use of Ada in Astrophysics. If you know what “parallel spectral line synthesis code” means, you’ll probably find something interesting here.

  • Adaino
    Adaino is a toolset written in Ada, to develop Ada applications on Arduinos on a host Windows machine.

  • Ada Reusable Code
    Ada components, including fuzzy logic, interval arithmetic, string editing, table management, smart pointers, and more.

  • AdaStudio
    Includes VAD (Visual Ada Developer), QT4Ada and QT5Ada (bindings to QT4 and QT5), and other interesting items.

  • Ada Util
    Ada Util is a collection of utility packages for Ada 2005. Several packages are inspired from Java packages and libraries. It includes:
    • A logging framework close to Java log4j framework
    • Support for properties
    • A serialization/deserialization framework for XML, JSON, CSV
    • Ada beans framework
    • Encoding/decoding framework (Base16, Base64, SHA, HMAC-SHA)
    • A composing stream framework (raw, files, buffers, pipes)
    • Several concurrency tools (reference counters, counters, pools)
    • Support for localized date format
    • Support for process creation and pipe streams (on Unix and Windows)
    • Support for CSV in the serialization framework
    • Integratation of Ahven 2.1 for the unit tests (activate with –enable-ahven)
    • A tool to generate perfect hash function
    It has been compiled and ported on Linux, Windows and Netbsd.

  • Andersen Library
    This site contains a collection of Ada programs and packages written by Jacob Sparre Andersen, which are distributed under the “Beerware” Open Source license. These include an ISBN handling package, various generic math packages, and more.

  • Anders Gidenstam’s Ada Software pages
    These include a number of interesting packages, including various lock-free data structures in Ada.

  • Arduino Blog
    This is Tero Koskinen’s blog on using Ada on an Arduino board, including downloads and code snippets.

  • Jonathan Parker’s Math Libraries
    are a collection of numerics routines in Ada (under the GPL license); these include SVD, QR, LU, Runge-Kutta, FFT, Arbitrary precision floating point, and random number generators.

  • Matreshka
    Matreshka is an Ada framework to develop information systems. It includes: extended support for internationalization; XML processing; web frameworks; SQL database access; and more.

  • Matthews Libraries and Programs
    The home page of John B. Matthews, which includes libraries for polynomial root finding in Ada; Jumble and War (two simulations of simple games), and other useful Ada stuff.

  • Stephen Leake’s Libraries
    This site includes a collection of Ada tools including SAL (Stephe’s Ada Library), Auto Text_IO, and more.

  • Student Packages
    String processing, HTML output routines, an Ada.Text_IO visualisation tool, forms based programming, a simple Unix interface, a Simple Prolog interpreter, making motif/callbacks easier, and data compression.

Individual Tools and Libraries

  • Ada AutoIT
    Ada AutoIT is an Ada binding to AutoIT, which is a test automation interface for Win32 systems.

  • Ada BFD
    Ada BFD is an Ada binding for the GNU Binutils BFD library. It allows reading binary ELF and COFF files using the GNU BFD.

  • Ada binding to Zlib
    ZLib.Ada is a thick binding to the popular compression/decompression library ZLib. It provides Ada style access to the ZLib C library.

  • AdaBLAS
    AdaBLAS is an Ada binding to BLAS.

  • Ada Crypto Library
    This a crypto library for Ada, written for the i386 and x86_64 hardware.

    AdaLAPACK is an Ada binding to LAPACK.

  • Ada-LAPACK
    Ada-LAPACK is an all-Ada implementation of parts of LAPACK.

  • Ada-Spread
    Ada-Spread is an Ada2005 binding to the high performance messaging service Spread (

  • Ada Web Application
    The AWA project is a framework to build a web application with Ada.

  • Ada 4 Automation
    (A4A in short) is a framework, for designing industrial automation applications using the Ada language. (Note: Site is in French.)

  • Addr2Line2locations
    Addr2Line2locations, is a utility for GPS (an Ada language oriented IDE from AdaCore), which provides you navigation in exceptions traceback and origin via the Locations pane of the GPS IDE.

    ADHCP is an implementation of the DHCP protocol in Ada.

  • Ahven
    Ahven is an Ada 95 unit test library.

  • ANet
    Anet is a networking library for the Ada programming language.

    This tool converts an Ada unit’s ASIS representation into XML, so as to make it easier to develop transformational tools using (for example) XSLT.

  • ASound
    A library for sound operations.

  • AZip
    AZip is an archive manager which is 100% written in Ada.

  • Basil
    Basil is a library for processing e-mail messages (including MIME parts).

  • Booch Components
    Simon Wright continues Dave Weller’s original work of porting Grady Booch’s C++ components to Ada95.

  • C2Ada Sourceforge project
    This project is the current home of the C2Ada C to Ada translator program. C2Ada can translate C headers to produce bindings as well as C programs to produce translations.

  • Canta
    Canta is an open source Windows application, written in Ada, that aims to help the user to learn to sing in tune.

  • Confignat
    Comfignat provides convenient command-line-controlled compile-time configuration of software built with the GNAT tools on Unix-like operating systems.

  • Corporate BS Generator
    This Ada program creates random sentences of corporate-speak; it’s available on-line and as an Ada program you can run locally.

  • Charles
    Charles is a container library for Ada95, modeled principally on the C++ STL. It features both ordered (lists and arrays) and unordered (sets and maps) collections. Associated with each container type is a separate iterator type, which allows you to visit each item in the container.

  • Cheddar
    Written in Ada and designed for educational purposes, the Cheddar program automatically checks realtime constraints in programs.

  • Configuration File package
    Config is a package for parsing configuration files (.ini, .inf, .cfg, …) and retrieving keys of various types.

  • Deepend
    Deepend is a storage pool with subpool capabilities for Ada 2005. (Subpools is a new Ada 2012 feature not directly available in Ada 2005.)

  • Dequesterity
    Dequesterity [dek-ster-i-tee] is an assortment of deque/buffer generics written in Ada 2005 that consist of building blocks that may be combined in various ways to create higher abstraction buffers.

  • DragonLace.Net
    Bringing the GNAT Ada compiler to DragonFlyBSD, FreeBSD, OpenBSD, NetBSD, and Solaris/OpenSolaris.

  • Excel Writer
    Excel Writer provides a library for creating Excel spreadsheet files directly from Ada programs (no copy of Excel or another office program is required).

  • G2F_IO
    G2F_IO implements an Ada 95 binding to a subset of the low-level MagickCore library.

  • Globe 3D
    GLOBE_3D is a free, open-source, real-time 3D Engine written in Ada, based on OpenGL.

  • Gnoga
    Gnoga is a framework of Ada packages that provide platform-independent user interface programming for the cloud, desktop and mobile. Gnoga uses a browser to render the UI, so it works almost anywhere, local or remote. Gnoga also includes a number of tools to make development of Gnoga applications easier.

  • GNU GMP and MPFR binding
    This binding to the GNU GMP and MPFR Multi-precision libraries offers excellent performance.

  • JEWL
    JEWL is a set of Ada packages aimed at novices which enables reasonably sophisticated Windows GUI applications to be built with a minimum of effort.

  • Magpie
    Ada framework providing work sharing/seeking services for distributing work amongst CPU cores on multi-core machines.

  • Mathpaqs
    Various mathematical packages including algebra, finite elements, random variables, probability dependency models, unlimited integers.

  • Muen Separation Kernel
    The Muen Separation Kernel is an first Open Source microkernel that has been formally proven to contain no runtime errors at the source code level. It is written in the SPARK subset of Ada.

  • Nasser Abbasi Ada page
    Packages and links on Ada.

  • Oliver Kellogg’s Ada source processing
    These are a number of Perl programs for processing Ada source code.

  • OpenGLAda
    OpenGLAda is a thick Ada binding for OpenGL and GLFW. It enables you to create complex graphical applications in Ada, using the OpenGL industry standard.

  • P2Ada Sourceforge Project
    A free Pascal-to-Ada translator.

  • Paraffin
    A suite of Ada 2005/2012 generics to facilitate iterative and recursive parallelism for multicore systems and provide safer recursion for single and multicore systems.

  • PCSC/Ada
    PCSC/Ada provides an Ada interface for communicating with smart cards via standard PC/SC interfaces. The library provides a thick, easy-to-use interface to the SCard API.

  • Player-Ada
    Player-Ada is a not-so-thin binding to the libplayerc client library that is distributed as part of the Player/Stage multi-robot interface/simulator software.

  • PLplot for Ada
    PLplot is a cross-platform software package for creating scientific plots. It has a dedicated Ada binding (along with a number of other languages).

  • QT4Ada
    QT4Ada is a hand-written Ada 2005 binding to QT 4.2.

  • QTAda
    QTAda is a different Ada 2005 binding to QT.

  • SOCI-Ada
    SOCI-Ada is a database access library based on the SOCI project. It has an easy-to-use and compact interface, yet still can provide high performance.

  • Tension Structures
    This site is to publicizes information about design and analysis of tension structures including cable roofs and membrane structures. Source code written in Ada95, examples and executable code for Windows available for download.

  • Uniparser
    A library for creating parsers and lexers. Powerful, flexible, and extensible.

  • XML4Ada95
    XML4Ada95 is a package which enables parsing and serialization of XML Documents, accessing them via the DOM Interface., and validation of them against DTDs and XML Schema.

  • Yami4
    YAMI4 is a set of messaging libraries designed for distributed systems with particular focus on control and monitoring systems.

  • Zip Ada
    ZIP file handling in Ada, including compression and decompression.

Share and Enjoy:
  • email
  • LinkedIn
  • Twitter
  • Facebook
  • Digg
  • RSS