Matreshka 0.3.0 Released

Matreshka is humming along nicely, with new features being added steadily. The latest version includes such niceties as:

  • Firebird/Interbase driver for SQL module.
  • extensions for AMF module to process UML Testing Profile, OCL and MOF Extentions.
  • text codecs for ISO-8859-5 and ASCII character encodings.
  • API improvement, bug fixes and performance improvements.
  • GNAT GPL 2012 support.

Good eh’?

In case you don’t know what Matreshka is, here’s a short rundown of the projects claim to fame:

Matreshka is framework for development of information systems in Ada. It provides:
– localization, internationalization and globalization support;
– XML processor;
– FastCGI support;
– SQL database access;
– UML processing module.

Head for the Matreshka download page if one or more of those bulletpoints have piqued your interest.

Public Ada Courses 20-24 August 2012 in Carlsbad CA

Today Ed Colbert from Absolute Software announced a public Ada course during the week of 20th. August 2012:

Hi All,

Absolute Software will be holding a public Ada course during the week of 20 August in Carlsbad, CA. You can find a full description and registration form on our web-site, Click the Public Courses button in the left margin. (We also offer courses on software architecture-based development, safety-critical development, object- oriented methods, and other object-oriented languages.)

If there is anything you’d like to discuss, please call, write, or send me E-mail.

Take Care,
Ed Colbert

So if you happen to be in the vicinity of Carlsbad CA, then why not pay Ed a visit and hear what he has cooked up.

GNAVI: GNU Ada Visual Interface, July 2012 Release

If you’re an Ada developer working on the Windows platform, GNAVI might of interest to you:

GNAVI is the open source alternative to visual software development languages like Delphi and Visual Basic. In addition to just being fully Open Source under the GPL, the language foundation of GNAVI, unlike Pascal or Basic of its competition, is the international standard of engineering, Ada. GNAVI for Windows offers comparable features to Delphi and Visual Basic including use of Active X controls and the ability to interface with .NET and Java.

Changes in this latest release include:

  • GWindows.Simple_sheet: added clipboard functionalities.
  • GWindows.Clipboard is part of the release installer package.
  • Edit_Box’es have the Read_Only option on creation.
  • Create_font has optionally a Char_Set choice.
  • GWindows is working properly on dual screens.

I’m not a Windows man myself, so I can’t comment on the quality of GNAVI – that will have to wait until they produce a version that works with Linux. *hint hint*

If you want to learn more about GNAVI, how about checking out the nice GNAVI tutorial.

Two New AVR-Ada Projects From Tero Koskinen

A while ago I reported on Tero’s Arduino Blog, and today I’m glad to say that Tero has put up two new AVR-Ada posts:

The Blinking LED example is geared towards complete beginners, and he actually makes it seem so easy that I’m even considering trying my hands at some Arduino+Ada fun.

Personally I think Tero deserves ÜBER geek points for soldering on his dad’s Thinkpad and ultimately making it work again. In my book that’s just pure wizardry!

An Ada Binding to ALSA

Yet another package from Jacob Sparre Andersen: An Ada binding to ALSA. For those of you who don’t know what ALSA is, it is the Advanced Linux Sound Architecture that provides sounds capability to the Linux family of operating systems.

Jacob’s first priority is being able to manage sound recording on both the “amd64” and “armhf” architectures. I’ve no idea how close he is to reaching that goal, but I suspect he’s more or less there because of this little nugget found on the website:

Implemented features:
+ 16-bit mono recording (Linux)

Maybe I can convince Jacob to add a short comment to this post, if he believes there’s more that needs mentioning.

A Standalone OpenID Client in Ada

Jacob Sparre Andersen has gone and made a standalone OpenID client in Ada, which of course is great news for us web-nuts and Ada Web Server fans.

An OpenID client to build into a web-server. We start with a branch of “Ada Server Faces” which means that the code in this repository for the time being is under the Apache 2 license. This is compatible with GPL-3 (but apparently not with GPL-2), so applications compiled with this will end up being either Apache-2 or GPL-3 licensed.

The “Ada Server Faces” project Jacob mentions is the brainchild of Stephane Carrez of Java2Ada fame. There’s a lot of good stuff on Stephane’s website, so be sure to check it out.

I plan on getting down and dirty with Jacob’s OpenID implementation real soon, as the project we’re currently working on at AdaHeads is at a point where a working OpenID login is required. The demo Jacob has supplied makes it look fairly simple to get going.

DePlo: dependency graphs for Ada

I discovered DePlo while perusing the Ada subreddit, and even though I’m personally quite satisfied with the dependency graphs provided by GPS, it’s always nice to know that there are other options out there to fulfill our dependency graph needs:

DePlo is a program that converts the dependency relationship between Ada packages (i.e., who “with”s whom) into a graph in DOT format. Package hierarchy is showed by drawing child packages inside their parents. The graph can be simplified by “collapsing” whole package hierarchies in a single node.

Currently it works only in a GNAT environment since it get the dependency graph by reading the ALI files generated by GNAT. I guess that it would be possible to make it portable by using ASIS… maybe in a future release.

If you want to see the DePlo in action then you might enjoy these screenshots, or you can just go straight to the Installation page and instantly get busy with plotting some dependency graphs. Enjoy!

Iterators in Ada 2012

Emmanuel Briot from AdaCore has written a couple of Ada gems about the new Ada 2012 iterators:

Ada 2012 iterators provide syntactic sugar for iterating over data structures. This Gem describes the new syntax and what it brings to the language. Part 2 will explain how you can define your own iterators when formulating new data structures.

This is very good stuff. Be sure not to miss these two articles.

DIY Operating system using in Ada

The Bare bones tutorial over at OSDev has been poted to Ada!

It supports x86 targets ATM, but will – according to the author – be extended to ARM (with the Raspberry Pi in mind).

The tutorial can be found at and the code is located at GitHub –

Tero’s Arduino Blog

So you want to use an Arduino with Ada, but you’re not quite clear on where to start. Well, as luck will have it Tero Koskinen just launched a new blog: Tero’s Arduino Blog.

This blog is about running Ada software on Arduinos and AVR processors.

Short and sweet. Perhaps a good place to start is the Building avr-gnat for AVR-Ada article. Arduino’s and Ada programming = A match made in heaven.