AdaCore, who are the chief stewards of the official GCC Ada frontend, GNAT, have been publishing weekly "gems" that are extremely informative for years.
Ada actually seems to be a pretty good idea for writing performant, security-critical code that has to link with C libraries... such as crypto libraries. Does anyone have any ideas on why it might not be as good as it looks, past the fact that the absolute latest version is proprietary?
I spent like 3 days trying to install / compile it on my mac for stm32f4, I couldn't get it to work. I can't imagine doing open source with a compiler nobody can install.
I'm pretty bummed, and no other implementation than gnat seems to free. So, the whole language is out of reach.
It's too bad, because i have some real time embedded stuff to write on a very light platform, and I'm stuck with C (I might try to strip some C++ executables again in the future, but I don't think C++ is a suited as Ada would be)
>I would meet every deadline, for each missile and each mine,
By land and by the sea.
And my storage would be pooling,
While my tasks were busy dueling,
If I only had GC.
This is a head scratcher... The most modern educational innovation is being applied for the least modern language. I guess it makes sense. There are lots of in person training programs for Ruby and Python, but not for Cobol or Ada.
Ada is quite a long way from COBOL. Having just completed its latest revision about a year and a half ago, Ada is very much cutting edge. Ada 2012 is hardly a maintenance revision like you may find for COBOL; it adds tons of new stuff like contracts and substantial improvements to concurrency and SMP support. Ada 2012 was too long after it's previous revision, Ada 2005, which was standardized in 2007, and was quite more substantial than even 2012.
Static typing, message passing concurrency, dynamic dispatch, modules, object orientation, generics. These things are so ancient, why would anyone want to use a language like that anymore? About the only thing it doesn't get a check mark for is functional programming. And most of those features I listed were actually well considered and deliberated on before being added into Ada so it's not just a kluge like tacking more features onto C.
http://www.adacore.com/adaanswers/gems
Get started..