Number 41 - April 1, 2018
The ARG, the keepers of the Ada Standard, have approved
several new features for the Ada language. Among other features, there is a new
assertion policy and a new pragma intended to improve the safety of Ada code.
While we find pragma Assure and procedure
Unchecked_Reallocation interesting (and we have an interview with their primary
author, Steve Baird, lined up for a future issue),
we're most intrigued by the new assertion policy.
Building on the ideas pioneered in the Vigil programming
the Blackhole assertion policy ensures that code that doesn't meet its
specification is sent somewhere it cannot cause harm to the users of the
Randy Brukardt, Editor for the ARG, notes that new policy
builds on the advantages of the existing policies. “Existing policies just
signal an error when a subprogram or other contract is violated. This potentially
could mean that the contract violation itself causes a safety violation. With Ada's
emphasis on safe code, that's not good enough. The new policy avoids the safety
violation by eliminating the problematic code from the program, so that it
cannot cause future problems.”
We couldn't help but wonder why the new policy has the
name it does. Mr. Brukardt explained that “we tried various names for this
policy: 'Tar_Pit', 'Dumpster', and 'Congress' were some of the suggestions – we
thought that 'Blackhole' best represented a place where something goes and never
Technical details on the new policy can be found
on the ARG website.
The lead engineer for one major Ada vendor, speaking off
the record, reports that they have implemented the new policy in their Ada
compiler and is now beginning to use it in the implementation of their compiler
technology. “The hardest part of our implementation was creating a singularity
as needed. Having solved that, we expect that the Blackhole policy will cut the
number of bugs delivered to customers by 90%, and reduce the technology support
costs of our compiler to virtually nothing.”
At presstime, Accurate Ada News was unable to reach any
of the beta testers of that that vendor for comment on the new assertion policy.
In other news from the same Ada vendor, their latest
version has been delayed because of problems in testing. A source, not
authorized to speak for the company, tells Accurate Ada News that the problem is
related to communication with the testing team. “It's like they vanished from
the face of earth!” according the source. We think this is just a yarn spun to
cover for a product that isn't ready for the public.
More on this developing story in the next issue of
Accurate Ada News.
Concerns about the accuracy of Accurate Ada News?
Please recheck the date of this report, then contact us.