News Archive

Adas 200 års fødselsdag

Per, Søren og Jacob mødtes i torsdags i anledning af Ada Augustas Lovelaces 200 års fødselsdag (og sprogets 35 års ditto).
Det var rigtig hyggeligt. Og det kunne have fortsat meget længere, hvis ikke vi var blevet smidt ud fordi Café Sneppen skulle lukke. 🙂

Vi har besluttet at holde næste møde i slutningen af januar eller starten af februar.  Søren laver en doodle og Per lægger hus til.

Su(per)btypes in Ada 2012 – Part 1

If you want to learn a bit about types and the Static_Predicate aspect in Ada 2012, then this AdaCore gem has the good stuff:

Ada 2012 is full of features for specifying a rich set of type properties. In this series of three Gems, we describe three aspects that can be used to state invariant properties of types and subtypes. This first Gem is concerned with the Static_Predicate aspect.

With the Static_Predicate aspect you can do cool stuff like this:

type Day is (Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday);
type T_Day is new Day with Static_Predicate => T_Day in Tuesday | Thursday;

Nice eh’? The compiler will now protect you against assigning Friday to a T_Day. That is pretty neat. Stay tuned for part 2 and 3, where more of the Ada 2012 goodness will be explained.

AdaDoom3 – FPS Action in Ada

Those of us who are gamers at heart, know that Id Software usually release their “old” games and tech as open source, and naturally that also happened for the Doom 3 game. This in itself is good news, but what is even better is the fact that efforts are being put into an Ada port. The man behind the project is only known to me as J JS, and he is hosting the project at the AdaDoom3 GitHub repository.

A few posts has been made about the project at the Ada Programming Community:

Feel free to pop in and join the Doom fun!

Dr. Dobbs Got The Lowdown on Ada 2012 Contracts

In an article aptly named Ada 2012: Ada With Contracts we get a very nice presentation of the new Ada 2012 facilities for contract-based programming.

The most recent version of the Ada standard, known as Ada 2012, brings contract-based programming to a mainstream language. Preconditions, postconditions, type invariants, and subtype predicates allow software developers to specify their programs’ intent more clearly, in effect embedding requirements into the source code. This feature makes it easier to review and understand the program, and it facilitates verification by the compiler, static analysis tools, and/or runtime checks.

I’ve used these new-fangled shinys a bit, and they are nice. Very nice actually. There’s just something truly awesome about being able to add pre/post-conditions to your method specification. The extra level of information and protection against errors is pretty amazing, and it is so darn easy to work with.

If you haven’t already tried your hand at these new features, be sure to do so. As the article says at the very end:

…the techniques of contract-based programming represent a significant advance.

I wholeheartedly agree.

News @ Ada Information Clearinghouse

Since I’ve been pretty lousy at keeping these pages updated these past months, I thought I’d share a good resource for Ada news: Ada Information Clearinghouse. News keep coming in at a pretty reliable pace, and while they don’t catch every little thing out there, they do get a lot of it, so check out AdaIC for your daily dose of Ada programming news.

The April 2013 Open Ada-DK Meeting

April 2nd. 2013 from 1730 -> ? marks the day and time when the twenty-eigth open Ada-DK meeting is being held.

The “open” part means that the meeting is not a members-only affair, but that anybody interested in Ada is welcome, so feel free to invite whomever you might believe could be interested in spending an evening talking about Ada programming.

If you’re interested in participating, feel free to send us an email and we’ll inform you of the when and where. The meeting is of course free.

Safe, Dynamic Task Creation in Ada

I’m a pretty big fan of R. Tyler Croy because his articles are always well-written and to the point, and his latest addition to the interwebs is no exception: Safe, Dynamic Task creation in Ada.

A few years ago, Ada become my hobby/tinker programming language of choice, for a number of reasons, concurrency being one of them. In this post I’d like to walk you through an example of dynamic task creation in Ada, which uses Ada.Task_Termination handlers, a new feature in Ada 2005.

The article is packed with neat little snippets of code for maximum entertainment value. It’s a good read if you’re interested in seeing Ada.Task_Termination in action.

Here’s hoping we wont have to wait forever before mr. Croy gets busy on his next Ada programming article.

The March 2013 Open Ada-DK Meeting

March 5th. 2013 from 1730 -> ? marks the day and time when the twenty-seventh open Ada-DK meeting is being held.

The “open” part means that the meeting is not a members-only affair, but that anybody interested in Ada is welcome, so feel free to invite whomever you might believe could be interested in spending an evening talking about Ada programming.

If you’re interested in participating, feel free to send us an email and we’ll inform you of the when and where. The meeting is of course free.