The library is a contribution to GtkAda, an Ada bindings to GTK+ toolkit. It deals with the following issues: tasking support; custom models for tree view widget; custom cell renderers for tree view widget; multi-columned derived model; an extension derived model (to add columns to an existing model); an abstract caching model for directory-like data; tree view and list view widgets for navigational browsing of abstract caching models; file system navigation widgets with wildcard filtering; resource styles; capturing the resources of a widget; embeddable images; some missing sub-programs and bugfixes; a measurement unit selection widget and dialogs; an improved hue-luminance-saturation color model; simplified image buttons and buttons customizable by style properties; controlled Ada types for GTK+ strong and weak references; and a simplified means to create lists of strings.
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.
ASCL comprises a set of reusable Ada packages. The focus is not on light-weight components but larger components such as a configuration manager and a CLI application environment which does all the argument parsing. It also includes a build environment for Linux which can be updated and maintained independently of the actual source code. It supports the personal software process for Ada programming.
BUSH (Business Shell) combines the capabilities of BASH, PHP, GCC, and databases into a uniform design for rapidly building secure, reliable Web sites. Based on an ISO standard, it promotes code reuse: scripts and templates can be compiled with GCC or ported to JVM or .Net using third party tools with only minor changes. It can also replace BASH as an interactive command shell with SQL support, and is a general purpose scripting language.
Strings edit is a library that provides I/O facilities for integers, floating-point numbers, Roman numerals, and strings. Both input and output subroutines support string pointers for consequent stream processing. The output can be aligned in a fixed size field with padding. Numeric input can be checked against expected values range to be either saturated or to raise an exception. For floating-point output either relative or absolute output precision can be specified. UTF-8 encoded strings are supported, including wildcard pattern matching, sets and maps of code points, upper/lowercase, and other Unicode categorizations.
The library provides an implementation of dimensioned values for Ada. Unit checks are made at run-time, if not optimized out by the compiler. SI and irregular measurement units are supported. Shifted units like degrees Celsius are supported too. Conversions from and back to strings are provided for all various irregular units. An extensive set of GTK widgets for dealing with dimensioned values is included, though use of GTK is not mandatory for the rest of the library.
Fuzzy sets for Ada is a library providing implementations of confidence factors with the operations not, and, or, xor, +, and *, classical fuzzy sets with the set-theoretic operations and the operations of the possibility theory, intuitionistic fuzzy sets with the operations on them, fuzzy logic based on the intuitionistic fuzzy sets and the possibility theory; fuzzy numbers, both integer and floating-point with conventional arithmetical operations, and linguistic variables and sets of linguistic variables with operations on them. String-oriented I/O is supported. A rich set of GTK+ GUI widgets is provided.
RTEMS (Real-Time Executive for Multiprocessor Systems) is a commercial grade real-time operating system designed for deeply embedded systems. It is a free (as in beer and speech) open-source solution that supports multi-processor systems. RTEMS is designed to support applications with the most stringent real-time requirements while being compatible with open standards such as POSIX. It includes filesystem support as well as a port of the FreeBSD TCP/IP stack. It's been ported to numerous processor architectures including ARM, Blackfin, PowerPC, i386, M68K, Coldfire, MIPS, Mico32, M32C, M32R, NIOS2, SPARC, SH, H8, and C3x/C4x DSPs. Using the GNU tools for cross development, you can use any number of systems as development hosts including both Unix and Windows platforms. There are pre-built cross development toolsets for RPM-based GNU/Linux distributions and MS Windows.