Ada Util is a collection of utility packages for Ada 2005. Several packages are inspired from Java packages and libraries (Java properties, log4j, listeners, streams). The library provides a logging framework, a serialization/deserialization framework for XML, JSON, CSV, an Ada beans framework, a composition stream framework (raw, files, buffers, pipes, sockets), several concurrency tools (reference counters, counters, pools, fifos, arrays), a REST client framework, and more.
The gps_installer is a GTK+ application used to integrate custom Ada library projects into the Gnat Programming Studio (GPS). The installer is designed to be as simple as possible. It takes the directory where the source files are located and the list of files to install. The installer tries to figure out where to move the files and how to process them. No specific actions need to be specified.
The GRASP Project has created an algorithmic-level graphical representation for software called the Control Structure Diagram (CSD). The CSD was created to improve the comprehension efficiency of Ada source code and, as a result, improve software reliability and reduce software costs. Since its creation, the CSD has been expanded and adapted to include other languages. GRASP provides the capability to generate CSD's from Ada 95, C, C++, Java, and VHDL source code in both a reverse and forward engineering mode with a level of flexibility suitable for professional application. GRASP has been integrated with the GNU family of compilers for Ada (GNAT) and C (gcc), and Sun's javac compiler for Java. Use of GRASP is not restricted to these compilers, however. This has resulted in a comprehensive graphically-based development environment for these languages. The user may view, edit, print, and compile source code as CSDs with no discernible addition to storage or computational overhead.
Matreshka is a framework for developing information systems in Ada. It includes support for unbounded form strings of Unicode characters, including case conversions and folding, normalization, collation, support for regular expression matching, an XML processor, and a FastCGI module. It also provides capabilities to manipulate by UML models, which allows you to develop tools like code generators.
QtAda is an Ada2005 language binding to the Qt libraries and a set of useful tools. It allows you to easily create powerful cross-platform graphical user interfaces completely on Ada 2005. QtAda applications use the native look and feel on every supported platform. It also allows you to develop your own widgets and integrate them into the Qt Designer for high speed visual GUI development. It uses a native thread-safe signal/slot mechanism and provides full transparent integration with Ada tasks.
Structure101 is a tool to understand, measure, and control software structure. It allows you to see exactly how your high-level components depend on each other and why. You can use it to find out immediately when your architecture is accidentally changed by code-level changes at the coal-face. It can help you control structural complexity, since it can measure the complexity of methods, classes, and packages and warn you when given limits are exceeded. It can also discover the locations of productivity-killing package dependency cycles.