Ada
Ada is a general purpose, compiled programming language. It features strong static typing, packages, exceptions, generics, tasking, object-orientation and contracts.
Installation
Install the gcc-ada package. This will install the GNAT compiler, which is an Ada front-end for the GNU Compiler Collection (GCC).
Additional packages:
- adaboochAUR - The Ada 95 Booch Components.
- adacursesAUR - An Ada binding to the 'ncurses' C library.
- ada_language_serverAUR - High performance syntactic and semantic engine for the Ada programming language.
- ada-libfswatchAUR - An Ada binding to the libfswatch library in the fswatch project.
- adasocketsAUR - BSD sockets in Ada.
- ada_spawnAUR - A simple Ada API to start processes and communicate with them.
- ada-web-serverAUR - Ada Web Server
- ahvenAUR - A simple unit test framework for the Ada programming language.
- alireAUR - A catalog of ready-to-use Ada libraries plus a command-line tool (alr) to use them.
- asisAUR - Allows Ada programs access to the syntactic and semantic structure of source code.
- aunitAUR - Ada Unit Testing Framework
- floristAUR - An open-source implementation of IEEE Standard 1003.5b-1996, the POSIX Ada binding.
- gcc-ada-debugAUR - Ada front-end for GCC (GNAT) with an unstripped runtime for effective debugging in gdb.
- GNATColl - GNAT Components Collection
- gnatcoll-coreAUR or gnatcoll-core-gitAUR
- gnatcoll-db2adaAUR
- gnatcoll-gmpAUR or gnatcoll-gmp-gitAUR
- gnatcoll-iconvAUR or gnatcoll-iconv-gitAUR
- gnatcoll-gnatinspectAUR
- gnatcoll-lzmaAUR
- gnatcoll-ompAUR
- gnatcoll-postgresAUR
- gnatcoll-python2AUR
- gnatcoll-readlineAUR
- gnatcoll-sqlAUR
- gnatcoll-sqliteAUR
- gnatcoll-syslogAUR
- gnatcoll-xrefAUR
- gnatcoll-zlibAUR
- gnat-gpsAUR - GNAT Programming Studio for Ada.
- gnatmemAUR - Monitors dynamic allocation and deallocation activity in a Ada program.
- gnatsymbolizeAUR - Translates addresses into their corresponding filename, line number, and function names for Ada programs.
- gprbuildAUR or gprbuild-gitAUR - GPRbuild build system
- gtkadaAUR - Ada bindings for the Gtk+ library.
- ini_file_managerAUR - Ini configuration file reader and manipulator package for Ada.
- inotify-adaAUR - An Ada 2012 library to monitor filesystem events using the Linux inotify API.
- libadalangAUR - A high performance semantic engine for the Ada programming language.
- libadalang-toolsAUR - Libadalang-based tools for Ada: gnatpp, gnatmetric and gnatstub.
- libgprAUR - Ada library to handle Gnat project files.
- libvssAUR - A high level string and text processing library for Ada.
- polyorbAUR - Provides the Distributed Systems Annex (DSA) to build distributed applications with Ada.
- sdladaAUR - An Ada binding to the Simple DirectMedia Layer (SDL) library.
- xmladaAUR or xmlada-gitAUR - XML/Ada
Test your installation
Check that GNAT is installed correctly by building a simple program, as follows:
hello.adb
with Ada.Text_IO; procedure Hello is begin Ada.Text_IO.Put_Line ("Hello, Arch!"); end Hello;
You can compile it with gnatmake
:
$ gnatmake hello
gcc -c hello.adb gnatbind -x hello.ali gnatlink hello.ali
Then run it:
$ ./hello
Hello, Arch!
See also
Language
- Rationale for Ada 2012
- Ada 2012 Language Reference Manual
- Wikibooks:Ada Programming
- Interactive learning platform Learn.adacore.com
- Wikipedia:SPARK (programming language)
Tools
- GNAT User’s Guide for Native Platforms
- GNAT Reference Manual
- GPRbuild and GPR Companion Tools User’s Guide