Cross-platform, scientific graphics plotting library
PLplot is a cross-platform, scientific graphics plotting library that supports math symbols and human languages (via UTF-8 user input strings); plot capabilities for multiple non-interactive plot file formats and in multiple interactive environments; and bindings for multiple computer languages.
Ada contributions : demos of GTKAda, binding to PCRE
Ada contributions : 1/Lorenz is a small animation program which draws the Lorenz attractor using GTK+. For maximum portability, it uses Ada and GTKAda with a Glade3 interface Windows executable bundled with all the GTK DLL's is provided. Upgraded to Gtk3 in 2017 2/Thin Ada binding to PCRE regular expression. 3/Gate3 : Ada code sketcher for glade3. generates an Ada prototype from a XML file. Enables RAD of user interface with glade 4/Julia set with GtkAda 5/OpenGL demos within a Gtk window. NeHe lessons and the penguin demo from testgtk. sources and executable for Windows 6/check_gtkada diagnoses your GtkAda installation. For Gtk3 only
gnoga - The GNU Omnificent GUI for Ada
Gnoga uses modern web technologies to allow simple creation of cross platform GUIs for Ada with native or custom look and feels that perform on par to native toolsets locally and can be easily and securely remoted as web apps over the internet as well.
Fuzzy sets, logic, numbers; intuitionistic fuzzy sets, fuzzy linguis
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.
A software components library
The Simple components for Ada library provides implementations of smart pointers for automatically collected objects (using reference counting), object persistence, unbounded and bounded arrays of smart pointers, generic unbounded arrays of private objects and plain pointers, generic sets, maps, B-trees, directed graphs, directed weighted graphs, stacks, and storage pools. It also includes table management, string editing, IEEE 754 support, and infix expression parsing tools. Implementations of some lock-free shared data structures are provided.
String editing and formatting library for Ada
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.
Handling dimensioned values in Ada
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.
A GUI library for designing gauges, meters, oscilloscopes, plotters
A library that is intended for designing high-quality industrial control widgets for Ada applications. The widgets are composed of transparent layers drawn by cairo. The widgets are fully scalable graphics. A time controlled refresh policy is supported for real-time and heavy-duty applications. The library supports caching graphical operations and stream I/O for serialization and deserialization. Ready-to-use gauge, meter, oscilloscope widgets are provided as samples as well as an editor widget for WYSIWYG design of complex dashboards. The software is based on GtkAda and cairoada, the Ada bindings to GTK+ and cairo.
A fast, unobtrusive and modern cross-platform GUI toolkit. Agar fully exploits hardware acceleration where available, but also supports simple frame-buffer interfaces. Agar is stand-alone and easily portable to new platforms and graphics systems.
A Java application for transferring computer files in 5 letter groups
Codegroup is a Java application that will allow one to convert binary (or text) computer files in to 5 letter codegroups for transmission over email, landline telephones, radioteletype or Morse Code. Codegroup has internal error correction & limited cryptography capabilities. Codegroup : ZZZZZ YBPIL AIAIG FMOPP CPAAA DGNGP GPGPA ADNJN ELJKO ELIMO GEOHF KIFGP IFBCB PKCPI YJMHE PHBHP PPOBH NCOHD AKLLL AGHFP DEGEF LKELC EAIJI ABAGP AHPPO IHHPH OHPDF YNFPB ALEPO KMPKP Once this program has a graphical user interface, an Enigma like subsystem must be devised for data whitening. For content encryption, the use of Java's facilities is being considered as a long term option. This project's initial sourcecode is related to : http://www.fourmilab.ch/codegroup/ http://winmorse.com/ https://bitbucket.org/bgneal/cpp-enigma http://www.whence.com/minimodem/ For the User Interface http://www.oracle.com/technetwork/java/javafx/tools/
Contributions to Ada bindings to GTK+
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.
An implementation of interval arithmetic
The library provides an implementation of intervals for Ada. It includes arithmetic and relational operations. The library supports intervals with integer and floating-point bounds. Dimensioned intervals are also supported
Jumblino is the open source aircraft development project, targeting the complete development of a community aircraft. Complete community control of the aircraft parametrics will lead to the etraordinary development.
Tables indexed by strings
This library provides an implementation of tables indexed by strings. The binary search is used for names of known length. It is also possible to search a table for names of unknown length, i.e. to parse a string using some table. Table elements can be of any private type. Key- insensitive tables are supported.
Iterative and recursive parallelism generics for Ada 2005 and Ada 2012
A suite of Ada 2012 generics to facilitate iterative and recursive parallelism for multicore systems and provide safer recursion for single and multicore systems. Generics include Ravenscar compatible versions for real-time systems. Also Includes paraffinalia, which is a set of useful generics for parallel quicksort, fast fourier transform, function integration, prefix sum, and Red-Black trees