Design
AdaCore Releases GNAT Pro 7.0
AdaCore today announced the availability of GNAT Pro 7.0, a major new version of the company’s flagship development environment product. This latest annual release completely implements the upcoming Ada 2012 language revision, offers a range of improvements (many based on user suggestions), supports several new platforms, includes an important new testing tool (GNATtest), and enhances several existing tools. As with all AdaCore products, GNAT Pro is Freely-Licensed Open Source Software (FLOSS).
”I“Although our main priority is always to maintain the highest level of support for our existing customers, we are still able to sustain a rapid pace of improvements and developments,” said Robert Dewar, President and CEO of AdaCore (US). “Every major release of GNAT Pro contains substantial advances, and this release is certainly no exception. It contains many important improvements, featuring in particular a comprehensive implementation of the new Ada 2012 language standard, which is itself an exciting step forward.”
The Ada programming language is reaching the final stages of a major revision, and the new standard, known as Ada 2012, will then be sent to ISO (International Organization for Standardisation) for ratification. The new features establish the Ada programming language as the benchmark for developers requiring the highest levels of reliability, safety, and security. The most important enhancements relate to the concept of contract-based programming. The introduction of more powerful assertion mechanisms in the language, such as pre- and post-conditions for subprograms, global assertions, and type invariants, encourage programmers to better specify the meaning of their code, and allow run-time verification to guarantee that their intent is, in fact, obeyed. These features will also be useful for static analysis tools.
The new GNAT Pro 7.0 includes the following enhancements:
Compiler:
- Complete Ada 2012 support
- New controlled type implementation (better memory usage)
- New warnings and improved error messages
- Optimisations for array processing and composite return values
Tools:
- Many new options and pretty-printing improvements in gnatpp
- New coupling metrics in gnatmetric
New Components:
- GNATtest (Automatic Test Framework), to create and maintain a complete unit testing infrastructure for complex projects. Based on AUnit, GNATtest embodies a simple idea: each visible subprogram should have at least one corresponding unit test.